3434 uses : actions/checkout@v3
3535 with :
3636 ref : refs/tags/${{ github.event.inputs.version }}
37-
37+
3838 # Assign environment variables used in subsequent steps
3939 - name : Env variable assignment
4040 run : echo "image_repository_name=$(echo ${{ github.repository }} | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV
4848 if [ "${{ github.event.inputs.version }}" != "" ]; then
4949 echo "TAG_NAME=${{ github.event.inputs.version }}" >> $GITHUB_ENV
5050 fi;
51-
51+
5252 - name : Login to GitHub Container Registry
5353 uses : docker/login-action@v2
5454 with :
@@ -94,29 +94,27 @@ jobs:
9494 echo "TAG_NAME=${{ github.event.inputs.version }}" >> $GITHUB_ENV
9595 fi;
9696
97- # Populate docker-compose.yml with variables from build process, including TAG_NAME.
98- - name : docker-compose file prep
99- uses :
danielr1996/[email protected] 100- env :
101- RELEASE_VERSION : ${{ env.TAG_NAME }}
102- IMAGE_REPO : ${{ env.image_repository_name }}
103- APP_NAME : ${{ github.event.repository.name }}
104- HOST_DOMAIN : ${{ env.domain }}
105- LETSENCRYPT_EMAIL : ${{ env.letsencrypt_email }}
106- with :
107- input : .deploy/docker-compose-template.yml
108- output : .deploy/${{ github.event.repository.name }}-docker-compose.yml
97+ - name : Create .env file
98+ run : |
99+ echo "Generating .env file"
100+
101+ echo "# Autogenerated .env file" > .env
102+ echo "HOST_DOMAIN=${{ secrets.DEPLOY_HOST }}" >> .env
103+ echo "LETSENCRYPT_EMAIL=${{ secrets.LETSENCRYPT_EMAIL }}" >> .env
104+ echo "APP_NAME=${{ github.event.repository.name }}" >> .env
105+ echo "IMAGE_REPO=${{ env.image_repository_name }}" >> .env
106+ echo "RELEASE_VERSION=${{ env.TAG_NAME }}" >> .env
109107
110108 # Copy only the docker-compose.yml to remote server home folder
111- - name : copy compose file via scp
109+ - name : copy files to target server via scp
112110113111 with :
114112 host : ${{ secrets.DEPLOY_HOST }}
115113 username : ${{ secrets.DEPLOY_USERNAME }}
116114 port : 22
117115 key : ${{ secrets.DEPLOY_KEY }}
118- source : " .deploy/${{ github.event.repository.name }}- docker-compose.yml"
119- target : " ~/"
116+ source : " ./docker-compose.yml,./ docker-compose.prod. yml,./.env "
117+ target : " ~/.deploy/${{ github.event.repository.name }}/ "
120118
121119 - name : Run remote db migrations
122120@@ -131,10 +129,11 @@ jobs:
131129 envs : APPTOKEN,USERNAME
132130 script : |
133131 echo $APPTOKEN | docker login ghcr.io -u $USERNAME --password-stdin
134- docker-compose -f ~/.deploy/${{ github.event.repository.name }}-docker-compose.yml pull
135- docker-compose -f ~/.deploy/${{ github.event.repository.name }}-docker-compose.yml up ${{ github.event.repository.name }}-migration
132+ cd ~/.deploy/${{ github.event.repository.name }}
133+ docker compose -f ./docker-compose.yml -f ./docker-compose.prod.yml pull
134+ docker compose -f ./docker-compose.yml -f ./docker-compose.prod.yml up app-migration
136135
137- # Deploy Docker image with ServiceStack application using `docker compose up` remotely
136+ # Deploy Docker image with your application using `docker compose up` remotely
138137 - name : remote docker-compose up via ssh
139138140139 env :
@@ -148,5 +147,6 @@ jobs:
148147 envs : APPTOKEN,USERNAME
149148 script : |
150149 echo $APPTOKEN | docker login ghcr.io -u $USERNAME --password-stdin
151- docker-compose -f ~/.deploy/${{ github.event.repository.name }}-docker-compose.yml pull
152- docker-compose -f ~/.deploy/${{ github.event.repository.name }}-docker-compose.yml up -d
150+ cd ~/.deploy/${{ github.event.repository.name }}
151+ docker compose -f ./docker-compose.yml -f ./docker-compose.prod.yml pull
152+ docker compose -f ./docker-compose.yml -f ./docker-compose.prod.yml up app -d
0 commit comments