ngbs 4 years ago
parent
commit
ec8361b5f2
2 changed files with 62 additions and 1 deletions
  1. 0 1
      .github/workflows/build-trojan-go.yml
  2. 62 0
      .github/workflows/build-xray.yml

+ 0 - 1
.github/workflows/build-trojan-go.yml

@@ -10,7 +10,6 @@ on:
 
 jobs:
   build-trojan-go:
-    needs: build-basic
     runs-on: ubuntu-latest
     steps:
       - name: Check Out Repo

+ 62 - 0
.github/workflows/build-xray.yml

@@ -0,0 +1,62 @@
+name: Build Xray
+
+on:
+  # push:
+  #   branches: [ master ]
+  # pull_request:
+  #   branches: [ master ]
+
+  workflow_dispatch:
+
+jobs:
+  build-xray:
+    runs-on: ubuntu-latest
+    steps:
+      - name: Set Variables
+        run: |
+          echo "XRAY_VERSION=$(curl -fsSL https://api.github.com/repos/xtls/xray-core/releases/latest | grep '"tag_name":' | head -n 1 | awk -F ":" '{print $2}' | sed 's/\"//g;s/v//g;s/,//g;s/ //g')" >> $GITHUB_ENV
+        shell: bash
+
+      - name: Check Out Repo
+        uses: actions/checkout@v2
+
+      - name: Set up Docker Buildx
+        id: buildx
+        uses: docker/setup-buildx-action@v1
+
+      - name: Cache Docker layers
+        uses: actions/cache@v2
+        with:
+          path: /tmp/.buildx-cache
+          key: ${{ runner.os }}-buildx-${{ github.sha }}
+          restore-keys: |
+            ${{ runner.os }}-buildx-
+
+      - name: Login to Docker Hub
+        uses: docker/login-action@v1
+        with:
+          username: ${{ secrets.DOCKER_HUB_USERNAME }}
+          password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
+
+      - name: Build Xray-core and push
+        id: docker_build_xray_core
+        uses: docker/build-push-action@v2
+        with:
+          context: ./xray
+          file: ./xray/Dockerfile.xray
+          push: true
+          tags: |
+            ${{ secrets.DOCKER_HUB_USERNAME }}/xray:latest
+            ${{ secrets.DOCKER_HUB_USERNAME }}/xray:${{ env.XRAY_VERSION }}
+          builder: ${{ steps.buildx.outputs.name }}
+          cache-from: type=local,src=/tmp/.buildx-cache
+          cache-to: type=local,dest=/tmp/.buildx-cache-new
+
+      - name: Move cache
+        run: |
+          rm -rf /tmp/.buildx-cache
+          mv /tmp/.buildx-cache-new /tmp/.buildx-cache
+
+      - name: Image digest
+        run: |
+          echo ${{ steps.docker_build_xray_core.outputs.digest }}