Skip to content

Commit

Permalink
🐛 Fix upptime/upptime#918 by adding warp
Browse files Browse the repository at this point in the history
  • Loading branch information
AnandChowdhary committed Jan 21, 2024
1 parent 2c6717d commit 47e177b
Showing 1 changed file with 46 additions and 5 deletions.
51 changes: 46 additions & 5 deletions src/helpers/workflows.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,52 @@ const introComment = async () => `#
# * Source: https://github.com/upptime/upptime
# * Docs and more: https://upptime.js.org
# * More by Anand Chowdhary: https://anandchowdhary.com
#
`;

const WARP_ACTION = ` - name: Install WARP to support IPv6
run: |
if [ "\${{ inputs.mode }}" == 'client' ]; then

This comment has been minimized.

Copy link
@titanism

titanism Jan 22, 2024

Contributor

Where is inputs.mode defined? There is no default behavior it seems. I don't think you can just copy/paste this without setting those variables.

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`;

export const graphsCiWorkflow = async () => {
const config = await getConfig();
const workflowSchedule = config.workflowSchedule || {};
Expand Down Expand Up @@ -107,8 +150,7 @@ jobs:
token: \${{ secrets.GH_PAT || github.token }}${
(await getHasIpV6Site())
? `
- name: Setup WARP
uses: fscarmen/warp-on-actions@v2`
${WARP_ACTION}`
: ""
}
- name: Update response time
Expand Down Expand Up @@ -154,8 +196,7 @@ jobs:
GH_PAT: \${{ secrets.GH_PAT || github.token }}${
(await getHasIpV6Site())
? `
- name: Setup WARP
uses: fscarmen/warp-on-actions@v2`
${WARP_ACTION}`
: ""
}
- name: Update response time
Expand Down

0 comments on commit 47e177b

Please sign in to comment.