88jobs :
99 check-requirements :
1010 name : Check Requirements
11- runs-on : ubuntu-22 .04
11+ runs-on : ubuntu-24 .04
1212 steps :
1313 - name : Set Version Tag
1414 run : echo "API_TAG=$(echo $GITHUB_REF | awk -F '/' '{print $NF}')" >> $GITHUB_ENV
@@ -17,25 +17,31 @@ jobs:
1717
1818 build-image :
1919 name : Build Image
20- runs-on : ubuntu-22 .04
20+ runs-on : ubuntu-24 .04
2121 needs : check-requirements
2222 steps :
2323 - uses : actions/checkout@v4
2424 - name : Parse API Version
2525 run : echo "API_VERSION=$(echo $GITHUB_REF | awk -F '/' '{print $NF}' | cut -c 2-)" >> $GITHUB_ENV
2626 - name : Docker Login
27- run : echo ${{ secrets.DOCKER_ACCESS_TOKEN }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
27+ run : |
28+ echo ${{ secrets.DOCKER_ACCESS_TOKEN }} | docker login -u ${{ secrets.DOCKER_USERNAME }} --password-stdin
29+ echo ${{ secrets.GHCRIO_ACCESS_TOKEN }} | docker login ghcr.io -u ${{ secrets.GHCRIO_USERNAME }} --password-stdin
2830 - name : Build Image
29- run : docker build -t steamcmd/api:latest .
31+ run : docker build -t steamcmd/api:latest -t ghcr.io/steamcmd/api:latest .
3032 # deploy
3133 - name : Tag Image
32- run : docker tag steamcmd/api:latest steamcmd/api:$API_VERSION
34+ run : |
35+ docker tag steamcmd/api:latest steamcmd/api:$API_VERSION
36+ docker tag ghcr.io/steamcmd/api:latest ghcr.io/steamcmd/api:$API_VERSION
3337 - name : Push Image
34- run : docker push steamcmd/api --all-tags
38+ run : |
39+ docker push steamcmd/api --all-tags
40+ docker push ghcr.io/steamcmd/api --all-tags
3541
3642 update-readme :
3743 name : Update Readme
38- runs-on : ubuntu-22 .04
44+ runs-on : ubuntu-24 .04
3945 steps :
4046 - uses : actions/checkout@v4
4147 - name : Update Docker Hub Description
4450 DOCKERHUB_USERNAME : ${{ secrets.DOCKER_USERNAME }}
4551 DOCKERHUB_PASSWORD : ${{ secrets.DOCKER_PASSWORD }}
4652 DOCKERHUB_REPOSITORY : steamcmd/api
47-
48- deploy-fly :
49- name : Deploy Fly.io
50- runs-on : ubuntu-22.04
51- needs : [check-requirements, build-image]
52- steps :
53- - uses : actions/checkout@v4
54- - uses : superfly/flyctl-actions/setup-flyctl@master
55- - name : Parse API Version
56- run : echo "API_VERSION=$(echo $GITHUB_REF | awk -F '/' '{print $NF}' | cut -c 2-)" >> $GITHUB_ENV
57- - name : Deploy API on Fly.io
58- run : flyctl deploy --app steamcmd --image steamcmd/api:${{ env.API_VERSION }} -e VERSION=${{ env.API_VERSION }}
59- env :
60- FLY_API_TOKEN : ${{ secrets.FLY_ACCESS_TOKEN }}
61-
62- deploy-render :
63- name : Deploy Render.com
64- runs-on : ubuntu-22.04
65- needs : [check-requirements, build-image]
66- steps :
67- - uses : actions/checkout@v4
68- - name : Parse API Version
69- run : echo "API_VERSION=$(echo $GITHUB_REF | awk -F '/' '{print $NF}' | cut -c 2-)" >> $GITHUB_ENV
70- - name : Deploy API on Render.com
71- run : curl https://api.render.com/deploy/${{ secrets.RENDER_SERVICE_ID }}?key=${{ secrets.RENDER_API_KEY }}&imgURL=docker.io%2Fsteamcmd%2Fapi%40${{ env.API_VERSION }}
0 commit comments