name: ci/cd internal docker image on: push: tags: - '*-vwmetrics' # schedule: # - cron: '0 12 * * *' env: GIT_REPO: vwmetrics DOCKER_IMAGE_NAME: vwmetrics jobs: build-and-push-vwmetrics: #! see on runner /data/.runner to add label (test => test:docker://debian:bullseye) # runs-on: test # container: debian:bullseye # runs-on: ubuntu-latest # container: node:16-bullseye runs-on: ubuntu-latest container: image: docker # container: # image: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_RUNNER }}:latest # credentials: # username: ${{ vars.GIT_USER_REPO }} # password: ${{ secrets.PACKAGE_RW }} # pwd # echo "sed -i "s/^FROM .*/FROM node:18/" /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile" # sed -i "s/^FROM .*/FROM node:18/" /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile # cat /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile steps: - name: Show Information run: echo "Runner ${{ runner.os }} working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}" # - name: clone & build # run: | # git clone https://${{ secrets.REPOSITORY_RW }}:x-oauth-basic@${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.GIT_REPO }} # cd ${{ env.GIT_REPO }} # docker buildx b . -t ${{ env.DOCKER_IMAGE_NAME }} # - name: login & push # run: | # echo "${{ secrets.PACKAGE_RW }}" | docker login -u ${{ vars.GIT_USER_REPO }} --password-stdin ${{ vars.REGISTRY_DOCKER }} # export VERSION=$(echo "${{ gitea.ref_name }}" | cut -d '-' -f 1) # docker tag ${{ env.DOCKER_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_IMAGE_NAME }}:$VERSION # docker tag ${{ env.DOCKER_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_IMAGE_NAME }}:latest # docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_IMAGE_NAME }}:$VERSION # docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_IMAGE_NAME }}:latest pull-vwmetrics: #! see on runner /data/.runner to add label (test => test:docker://debian:bullseye) # runs-on: test # container: debian:bullseye # runs-on: ubuntu-latest # container: node:16-bullseye runs-on: ubuntu-latest container: image: ubuntu # container: # image: ${{ vars.REGISTRY_DOCKER }}/${{ vars.DOCKER_IMAGE_RUNNER }}:latest # credentials: # username: ${{ vars.GIT_USER_REPO }} # password: ${{ secrets.PACKAGE_RW }} # pwd # echo "sed -i "s/^FROM .*/FROM node:18/" /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile" # sed -i "s/^FROM .*/FROM node:18/" /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile # cat /workspace/${{ vars.GIT_USER_REPO }}/gitea-runner/${{ env.GIT_REPO }}/Dockerfile steps: - name: login & push run: | apt-get update apt-get install curl - name: Pull and restart container uses: appleboy/ssh-action@v1 with: host: 163.172.84.28 username: stephane key: ${{ secrets.SSH_KEY }} passphrase: ${{ secrets.SSH_PASS }} port: 22 script: | docker compose -f /opt/dockerapps/docker-compose.yml pull ${{ env.DOCKER_IMAGE_NAME }} docker compose -f /opt/dockerapps/docker-compose.yml up -d ${{ env.DOCKER_IMAGE_NAME }} #docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_IMAGE_NAME }}:$VERSION # docker pull gitea.jingoh.fr/staffadmin/test:0.0.1 # docker tag gitea.jingoh.fr/staffadmin/test:0.0.1 gitea.jingoh.fr/staffadmin/toto:latest # docker push gitea.jingoh.fr/staffadmin/toto:latest # - name: Git clone private repository # uses: actions/checkout@v4 # with: # repository: ${{ gitea.repository }} # token: ${{ secrets.REPO_PULL_GITEA }} # - name: Login to docker private registry # uses: docker/login-action@v3 # with: # registry: ${{ vars.REGISTRY_DOCKER }} # username: ${{ vars.GIT_USER_REPO }} # password: ${{ secrets.PACKAGE_RW }} # - run: git --help # - name: Build and push image in registry # uses: docker/build-push-action@v5 # with: # context: . # push: true # tags: ${{ vars.REGISTRY_DOCKER }}/${{ env.DOCKER_IMAGE_NAME }}:latest,${{ vars.REGISTRY_DOCKER }}/${{ env.DOCKER_IMAGE_NAME }}:${{ gitea.ref_name }} # - name: Output # run: echo "Runner push on ${{ vars.REGISTRY_DOCKER }} image ${{ env.DOCKER_IMAGE_NAME }} tag ${{ gitea.ref_name }}"