sub domain deploy for branches 11
All checks were successful
Deploy App / build (push) Successful in 11s
Deploy App / deploy (push) Successful in 10s

This commit is contained in:
valere
2026-02-02 20:31:49 +01:00
parent 8337eb9e4c
commit 75507452ac
2 changed files with 40 additions and 54 deletions

View File

@@ -9,55 +9,8 @@ jobs:
- /var/docker-web:/var/docker-web - /var/docker-web:/var/docker-web
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Edit .env - name: Setup environment
run: | run: ./.github/workflows/setup-env.sh
set -a && source .env && set +a
changeEnvVar() {
local var_name="$1"
local new_value="$2"
local env_file=".env"
if grep -q "^${var_name}=" "$env_file"; then
sed -i "s|${var_name}=.*|${var_name}=${new_value}|" "$env_file"
else
echo "${var_name}=${new_value}" >> "$env_file"
fi
}
# Variables GitHub
APP_NAME="${GITHUB_REPOSITORY##*/}"
BRANCH_NAME=$GITHUB_REF_NAME
# Configuration pour les branches non-principales
if [ "$BRANCH_NAME" != "main" ] && [ "$BRANCH_NAME" != "master" ]; then
DOMAIN="$BRANCH_NAME.$DOMAIN"
APP_NAME="$BRANCH_NAME_$APP_NAME"
PORT=$(bash /var/docker-web/src/cli.sh ALLOCATE_PORT)
sed -i "s|${GITHUB_REPOSITORY##*/}|$APP_NAME|g" docker-compose.yml
fi
changeEnvVar "DOMAIN" $DOMAIN
changeEnvVar "APP_NAME" $APP_NAME
changeEnvVar "PORT" $PORT
changeEnvVar "APP_DIR" "/var/docker-web/apps/$APP_NAME"
set -a && source .env && set +a
cat .env
echo $APP_NAME
- name: Upload workspace files
uses: actions/upload-artifact@v3
with:
name: workspace-files
path: .
- uses: actions/checkout@v4
- name: Restore workspace files
uses: actions/download-artifact@v3
with:
name: workspace-files
path: .
- name: Build app - name: Build app
run: | run: |
set -a && source .env && set +a set -a && source .env && set +a
@@ -79,11 +32,8 @@ jobs:
- /var/docker-web:/var/docker-web - /var/docker-web:/var/docker-web
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Restore workspace files - name: Setup environment
uses: actions/download-artifact@v3 run: ./.github/workflows/setup-env.sh
with:
name: workspace-files
path: .
- name: Deploy - name: Deploy
run: | run: |
set -a && source .env && set +a set -a && source .env && set +a

36
.github/workflows/setup-env.sh vendored Executable file
View File

@@ -0,0 +1,36 @@
#!/bin/bash
set -a && source .env && set +a
changeEnvVar() {
local var_name="$1"
local new_value="$2"
local env_file=".env"
if grep -q "^${var_name}=" "$env_file"; then
sed -i "s|${var_name}=.*|${var_name}=${new_value}|" "$env_file"
else
echo "${var_name}=${new_value}" >> "$env_file"
fi
}
# Variables GitHub
APP_NAME="${GITHUB_REPOSITORY##*/}"
BRANCH_NAME=$GITHUB_REF_NAME
# Configuration pour les branches non-principales
if [ "$BRANCH_NAME" != "main" ] && [ "$BRANCH_NAME" != "master" ]; then
DOMAIN="$BRANCH_NAME.$DOMAIN"
APP_NAME="$BRANCH_NAME_$APP_NAME"
PORT=$(bash /var/docker-web/src/cli.sh ALLOCATE_PORT)
sed -i "s|${GITHUB_REPOSITORY##*/}|$APP_NAME|g" docker-compose.yml
fi
changeEnvVar "DOMAIN" $DOMAIN
changeEnvVar "APP_NAME" $APP_NAME
changeEnvVar "PORT" $PORT
changeEnvVar "APP_DIR" "/var/docker-web/apps/$APP_NAME"
set -a && source .env && set +a
cat .env
echo $APP_NAME