3838
3939 - name : Set up environment variables
4040 run : |
41- echo "image_repository_name=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
42- echo "repository_name=$(echo ${{ github.repository }} | cut -d '/' -f 2)" >> $GITHUB_ENV
43- echo "repository_name_lower=$(echo ${{ github.repository }} | cut -d '/' -f 2 | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
44- echo "org_name=$(echo ${{ github.repository }} | cut -d '/' -f 1)" >> $GITHUB_ENV
41+ echo "IMAGE=ghcr.io/$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
42+ repo_name="$(echo ${{ github.repository }} | cut -d '/' -f 2)"
43+ echo "SERVICE=$(echo $repo_name | tr '[:upper:]' '[:lower:]' | tr '.' '-')" >> $GITHUB_ENV
4544 if find . -maxdepth 2 -type f -name "Configure.Db.Migrations.cs" | grep -q .; then
4645 echo "HAS_MIGRATIONS=true" >> $GITHUB_ENV
4746 else
@@ -81,22 +80,22 @@ jobs:
8180 - name : Ensure directories exist with correct permissions
8281 run : |
8382 echo "Creating directories with correct permissions"
84- kamal server exec "mkdir -p /opt/docker/${{ env.repository_name }}/App_Data /opt/docker/${{ env.repository_name }}/initdb.d"
83+ kamal server exec "mkdir -p /opt/docker/${{ env.SERVICE }}/App_Data /opt/docker/${{ env.SERVICE }}/initdb.d"
8584
8685 echo "Setting app file permissions"
87- kamal server exec "chown -R 1654:1654 /opt/docker/${{ env.repository_name }}/App_Data /opt/docker/${{ env.repository_name }}/initdb.d"
86+ kamal server exec "chown -R 1654:1654 /opt/docker/${{ env.SERVICE }}/App_Data /opt/docker/${{ env.SERVICE }}/initdb.d"
8887
8988 - name : Check if first run and execute kamal app boot if necessary
9089 run : |
91- FIRST_RUN_FILE="~/first-run/${{ env.repository_name }}"
90+ FIRST_RUN_FILE="~/first-run/${{ env.SERVICE }}"
9291 if ! kamal server exec -q "test -f $FIRST_RUN_FILE"; then
9392 kamal server exec -q "mkdir -p ~/first-run && touch $FIRST_RUN_FILE" || true
9493
9594 if [ -n "${{env.INIT_DB_SQL}}" ]; then
9695 echo "Initializing DB with INIT_DB_SQL secret..."
9796 # Save the SQL content to a temporary file
9897 echo "${{ env.INIT_DB_SQL }}" > init-db.sql
99- cat init-db.sql | kamal server exec -i "cat > /opt/docker/${{ env.repository_name }}/initdb.d/${{ env.repository_name }}.sql" && rm init-db.sql || true
98+ cat init-db.sql | kamal server exec -i "cat > /opt/docker/${{ env.SERVICE }}/initdb.d/${{ env.SERVICE }}.sql" && rm init-db.sql || true
10099 fi
101100 # Start all kamal accessories
102101 kamal accessory boot all || true
@@ -109,13 +108,13 @@ jobs:
109108
110109 - name : Verify file permissions before deploy
111110 run : |
112- kamal server exec --no-interactive "chown -R 1654:1654 /opt/docker/${{ env.repository_name }}/App_Data /opt/docker/${{ env.repository_name }}/initdb.d"
111+ kamal server exec --no-interactive "chown -R 1654:1654 /opt/docker/${{ env.SERVICE }}/App_Data /opt/docker/${{ env.SERVICE }}/initdb.d"
113112
114113 - name : Deploy with Kamal
115114 run : |
116115 kamal lock release -v
117116 kamal server exec --no-interactive 'echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin'
118- kamal server exec --no-interactive 'docker pull ghcr.io/ ${{ env.image_repository_name }}:latest'
117+ kamal server exec --no-interactive 'docker pull ${{ env.IMAGE }}:latest'
119118 kamal deploy -P --version latest
120119
121120 - name : Migration
0 commit comments