name: Deploy App on: [push] jobs: build: runs-on: ubuntu-22.04 container: volumes: - /var/docker-web:/var/docker-web steps: - uses: actions/checkout@v4 - name: Set Vars run: | set -a && source .env && set +a sed -i "s/BRANCH_NAME=.*/BRANCH_NAME=$GITHUB_REF_NAME/" .env # Configuration pour les branches non-principales if [ "$BRANCH_NAME" != "main" ] && [ "$BRANCH_NAME" != "master" ]; then sed -i "s/PORT=.*/PORT=$PORT+1/" .env sed -i "s/DOMAIN=.*/DOMAIN=$BRANCH_NAME.$DOMAIN/" .env sed -i "s/container_name: evilspins/container_name: $BRANCH_NAME.$DOMAIN/" docker-compose.yml sed -i "s/REPO_NAME=.*/REPO_NAME=$BRANCH_NAME.$DOMAIN/" .env fi sed -i "s/REPO_NAME=.*/REPO_NAME=${GITHUB_REPOSITORY##*/}/" .env sed -i "s/APP_DIR=.*/APP_DIR=/var/docker-web/apps/$REPO_NAME" .env - uses: actions/checkout@v4 - name: Build app run: | set -a && source .env && set +a bash /var/docker-web/src/cli.sh down "${REPO_NAME}" rm -rf "$APP_DIR" mkdir "$APP_DIR" cp -a $(find . -mindepth 1 -maxdepth 1 ! -name '.git' ! -name 'node_modules') "$APP_DIR/" export COMPOSE_BAKE=false docker rmi "local/${REPO_NAME}" 2>/dev/null || true bash /var/docker-web/src/cli.sh build "${REPO_NAME}" deploy: runs-on: ubuntu-22.04 needs: build container: volumes: - /var/docker-web:/var/docker-web steps: - uses: actions/checkout@v4 - name: Deploy with docker-web run: | echo "last step, for BRANCH $BRANCH_NAME is domain correct : $DOMAIN ?"