ZeroTier is an SDN platform that allows users to create virtual networks that can span multiple devices, locations, and cloud providers. ZeroTier creates an encrypted peer-to-peer mesh overlay network that handles NAT traversal and authentication to network resources.
The ZeroTier Github Action allows users to easily integrate ZeroTier into their CI/CD workflows by temporarily joining and authorizing runners onto private ZeroTier networks.
- name: ZeroTier
uses: zerotier/[email protected]
with:
network_id: ${{ secrets.ZEROTIER_NETWORK_ID }}
auth_token: ${{ secrets.ZEROTIER_CENTRAL_TOKEN }}
ZEROTIER_CENTRAL_TOKEN
can be provisioned from Account
section in the ZeroTier Central admin panel.
This Action works on Ubuntu, MacOS, and Windows runners.
This action installs ZeroTier on the runner node and generates a unique ZeroTier identity.
It then uses the supplied auth_token
to authorize the runner onto the network.
- name: ZeroTier
uses: zerotier/[email protected]
with:
network_id: ${{ secrets.ZEROTIER_NETWORK_ID }}
auth_token: ${{ secrets.ZEROTIER_CENTRAL_TOKEN }}
- name: ping host
shell: bash
run: |
count=10
while ! ping -c 1 ${{ secrets.ZEROTIER_HOST_IP }} ; do
echo "waiting..." ;
sleep 1 ;
let count=count-1
done
echo "ping success"
After the workflow has completed, a post
step automatically cleans
up by removing the runner from the network.