name: ci/cd internal docker image #! see https://github.com/will-moss/isaiah/tree/master on: push: tags: - '*-osint' # schedule: # - cron: '0 8 2 * *' env: GIT_REPO: osint_toolkit DOCKER_FRONT_IMAGE_NAME: osinttoolkitfront DOCKER_BACK_IMAGE_NAME: osinttoolkitback jobs: build-push-osint-toolkit: #! see on runner /data/.runner to add label (test => test:docker://debian:bullseye) runs-on: ubuntu-latest container: image: docker steps: - name: Show Information run: echo "Runner ${{ runner.os }} working on repository ${{ gitea.repository }} and on tag ${{ gitea.ref_name }}" - name: clone & build [front] run: | git clone https://${{ secrets.REPOSITORY_RW }}:x-oauth-basic@${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.GIT_REPO }} cd ${{ env.GIT_REPO }}/frontend docker buildx b . -t ${{ env.DOCKER_FRONT_IMAGE_NAME }} - name: login & push [front] 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_FRONT_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_FRONT_IMAGE_NAME }}:$VERSION docker tag ${{ env.DOCKER_FRONT_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_FRONT_IMAGE_NAME }}:latest docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_FRONT_IMAGE_NAME }}:$VERSION docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_FRONT_IMAGE_NAME }}:latest - name: clone & build [back] run: | git clone https://${{ secrets.REPOSITORY_RW }}:x-oauth-basic@${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.GIT_REPO }} cd ${{ env.GIT_REPO }}/backend docker buildx b . -t ${{ env.DOCKER_BACK_IMAGE_NAME }} - name: login & push [back] 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_BACK_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_BACK_IMAGE_NAME }}:$VERSION docker tag ${{ env.DOCKER_BACK_IMAGE_NAME }} ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_BACK_IMAGE_NAME }}:latest docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_BACK_IMAGE_NAME }}:$VERSION docker push ${{ vars.REGISTRY_DOCKER }}/${{ vars.GIT_USER_REPO }}/${{ env.DOCKER_BACK_IMAGE_NAME }}:latest # pull-up-osint_toolkit: # #! see on runner /data/.runner to add label (test => test:docker://debian:bullseye) # runs-on: ubuntu-latest # container: # image: ubuntu # steps: # - name: Install required packages # run: | # apt-get -y update # apt-get install -y curl # - name: Pull and up 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_FRONT_IMAGE_NAME }} # docker compose -f /opt/dockerapps/docker-compose.yml up -d ${{ env.DOCKER_FRONT_IMAGE_NAME }}