{"repo":"egor-tensin/setup-wireguard","free":true,"listed":false,"github":"https://github.com/egor-tensin/setup-wireguard","clone":"git clone https://github.com/egor-tensin/setup-wireguard.git","description":"GitHub action to set up WireGuard","language":null,"stars":74,"topics":["github-actions","action","wireguard"],"license":"MIT","category":"networking-infra","readme_excerpt":"Set up WireGuard ================ This GitHub action sets up a WireGuard connection in your workflow run. 1. Installs WireGuard if it's missing. 2. Sets up a connection using the provided credentials. Use it your workflow like this: - name: Set up WireGuard uses: egor-tensin/setup-wireguard@v1 with: endpoint: 46.46.46.46:51820 endpoint public key: 9IHlvJqgkVWMq57a0A56XI5IjhnL5gaRhI1Pszk7S24= ips: 192.168.143.254/24,fd8c:bc10:5021::192.168.143.254/48 allowed ips: 192.168.143.0/24,fd8c:bc10:5021::/48 private key: GLEiXhRwFuhw8aPy+HQfSMwwoLU0Sw8jE8MOxZ8GV3w= preshared key: PWAfvVWCjiNV0Uh2DhmXhdRaT326qosSOcaDB3j9dwI= Of couse it's highly advised to store all sensitive data in your repository's secrets. It could then become something like: - name: Set up WireGuard uses: egor-tensin/setup-wireguard@v1 with: endpoint: '${{ secrets.ENDPOINT }}' endpoint public key: '${{ secrets.ENDPOINT PUBLIC }}' ips: '${{ secrets.IPS }}' allowed ips: '${{ secrets.ALLOWED IPS }}' private key: '${{ secrets.PRIVATE }}' preshared key: '${{ secrets.PRESHARED }}' API --- Input Example Description ------------------- ------------------------------------------------------- ----------- endpoint 46.46.46.46:51820 Endpoint to connect to in the HOST:PORT format. endpoint public key 9IHlvJqgkVWMq57a0A56XI5IjhnL5gaRhI1Pszk7S24= Endpoint's public key. ips 192.168.143.254/24,fd8c:bc10:5021::192.168.143.254/48 Comma-separated list of IP addresses to assign to the VM. allowed ips 192.168.143.0/24,fd8c:bc10:5021::/4","default_branch":null,"files":null,"tree":[],"storefront":"/r/egor-tensin","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/egor-tensin/setup-wireguard/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}