sub domain deploy for branches 11
This commit is contained in:
58
.github/workflows/deploy.yml
vendored
58
.github/workflows/deploy.yml
vendored
@@ -9,55 +9,8 @@ jobs:
|
||||
- /var/docker-web:/var/docker-web
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Edit .env
|
||||
run: |
|
||||
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: Setup environment
|
||||
run: ./.github/workflows/setup-env.sh
|
||||
- name: Build app
|
||||
run: |
|
||||
set -a && source .env && set +a
|
||||
@@ -79,11 +32,8 @@ jobs:
|
||||
- /var/docker-web:/var/docker-web
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Restore workspace files
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: workspace-files
|
||||
path: .
|
||||
- name: Setup environment
|
||||
run: ./.github/workflows/setup-env.sh
|
||||
- name: Deploy
|
||||
run: |
|
||||
set -a && source .env && set +a
|
||||
|
||||
36
.github/workflows/setup-env.sh
vendored
Executable file
36
.github/workflows/setup-env.sh
vendored
Executable 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
|
||||
Reference in New Issue
Block a user