-
Notifications
You must be signed in to change notification settings - Fork 29
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
98 additions
and
20 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
name: "Test" | ||
|
||
on: | ||
workflow_dispatch: | ||
release: | ||
types: [created] | ||
tags: | ||
- 'v*' | ||
|
||
|
||
jobs: | ||
client-by-default: | ||
runs-on: ubuntu-latest | ||
name: client warp+doh mode by default | ||
steps: | ||
- uses: fscarmen/[email protected] | ||
|
||
client: | ||
runs-on: ubuntu-latest | ||
name: client warp+doh mode | ||
steps: | ||
- name: Set up WARP with client | ||
uses: fscarmen/[email protected] | ||
with: | ||
mode: client | ||
|
||
wireguard: | ||
runs-on: ubuntu-latest | ||
name: wireguard mode | ||
steps: | ||
- name: Set up WARP with wireguard | ||
uses: fscarmen/[email protected] | ||
with: | ||
mode: wireguard |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,6 +3,18 @@ | |
* * * | ||
|
||
Usage: | ||
* client warp+doh mode | ||
``` | ||
- uses: fscarmen/warp-on-actions@v1 | ||
- name: Set up WARP | ||
uses: fscarmen/[email protected] | ||
with: | ||
mode: client # Optional, default | ||
``` | ||
|
||
* wireguard | ||
``` | ||
- name: Set up WARP | ||
uses: fscarmen/[email protected] | ||
with: | ||
mode: wireguard | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,25 +1,57 @@ | ||
name: 'Install Warp' | ||
# action.yml | ||
name: 'Install WARP' | ||
author: 'fscarmen <[email protected]>' | ||
description: 'Install Cloudflare Warp on Github actions' | ||
|
||
inputs: | ||
mode: | ||
description: 'Choose WARP mode: wireguard or client.' | ||
required: false | ||
default: 'client' | ||
|
||
runs: | ||
using: composite | ||
steps: | ||
- name: Install Warp | ||
continue-on-error: true | ||
- name: Install WARP | ||
run: | | ||
sudo apt-get -y update | ||
sudo apt-get -y install --no-install-recommends net-tools iproute2 openresolv dnsutils iptables wireguard-tools | ||
echo "[Interface] | ||
PrivateKey = cKE7LmCF61IhqqABGhvJ44jWXp8fKymcMAEVAzbDF2k= | ||
Address = 172.16.0.2/32 | ||
Address = fd01:5ca1:ab1e:823e:e094:eb1c:ff87:1fab/128 | ||
DNS = 8.8.8.8,8.8.4.4 | ||
MTU = 1280 | ||
[Peer] | ||
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo= | ||
AllowedIPs = 0.0.0.0/0 | ||
AllowedIPs = ::/0 | ||
Endpoint = 162.159.193.10:2408" | sudo tee /etc/wireguard/wgcf.conf | ||
sudo wg-quick up wgcf | ||
sudo curl -s4m8 ip.sb | ||
shell: bash | ||
if [ "${{ inputs.mode }}" == 'client' ]; then | ||
echo "WARP mode: client warp+doh." | ||
sudo apt-get -y update | ||
curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | sudo gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg | ||
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflare-client.list | ||
sudo apt-get update | ||
sudo apt-get install -y cloudflare-warp | ||
sudo warp-cli --accept-tos register | ||
sudo warp-cli --accept-tos set-mode warp+doh | ||
sudo warp-cli --accept-tos connect | ||
elif [ "${{ inputs.mode }}" == 'wireguard' ]; then | ||
echo "WARP mode: wireguard." | ||
sudo apt-get -y update | ||
sudo apt-get -y install --no-install-recommends net-tools iproute2 openresolv dnsutils iptables wireguard-tools | ||
LAN=$(ip route get 192.168.193.10 | grep -oP 'src \K\S+') | ||
echo "[Interface] | ||
PrivateKey = cKE7LmCF61IhqqABGhvJ44jWXp8fKymcMAEVAzbDF2k= | ||
Address = 172.16.0.2/32 | ||
Address = fd01:5ca1:ab1e:823e:e094:eb1c:ff87:1fab/128 | ||
PostUp = ip -4 rule add from $LAN lookup main | ||
PostDown = ip -4 rule delete from $LAN lookup main | ||
DNS = 8.8.8.8,8.8.4.4 | ||
MTU = 1280 | ||
[Peer] | ||
PublicKey = bmXOC+F1FxEMF9dyiK2H5/1SUtzH0JuVo51h2wPfgyo= | ||
AllowedIPs = 0.0.0.0/0 | ||
AllowedIPs = ::/0 | ||
Endpoint = 162.159.193.10:2408" | sed "s/^[ ]\+//g" | sudo tee /etc/wireguard/warp.conf | ||
sudo wg-quick up warp | ||
else | ||
echo -e "WARP mode: ${{ inputs.mode }}.\nYou can choose client or wireguard." | ||
exit 1 | ||
fi | ||
sleep 1 | ||
sudo curl -s4m8 --retry 3 -A Mozilla https://api.ip.sb/geoip | ||
shell: bash |