Skip to content

Commit

Permalink
Fix pr nginx deploy
Browse files Browse the repository at this point in the history
  • Loading branch information
ggodlewski committed Jun 30, 2024
1 parent f09afad commit 4ec58ea
Show file tree
Hide file tree
Showing 3 changed files with 103 additions and 66 deletions.
1 change: 1 addition & 0 deletions .github/workflows/DevelopServerDeploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ jobs:
run: |
docker run -d --name wikigdrive-develop \
--restart unless-stopped \
--network nginx \
-v wikiGDriveDevelop:/data \
-v /home/wikigdrive/service_account.json:/service_account.json \
-v /home/wikigdrive/env.develop:/usr/src/app/.env \
Expand Down
66 changes: 0 additions & 66 deletions .github/workflows/feat-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,72 +35,6 @@ jobs:
runs-on: wgd-dev

steps:
- name: Extract branch name
shell: bash
run: echo "::set-env name=BRANCH_NAME::$(echo ${GITHUB_REF#refs/heads/} | sed 's/\//_/g')"
- name: Test
run: echo "${BRANCH_NAME}"

- uses: actions/checkout@v3

- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20
cache: npm

- name: Build action runner
run: docker build -t "wgd-action-runner:${BRANCH_NAME}" --build-arg "GIT_SHA=${GITHUB_SHA}" apps/wgd-action-runner

- name: Build hugo docs
run: |
docker run \
-v "${GITHUB_WORKSPACE}/hugo:/site" \
-v "${GITHUB_WORKSPACE}/website:/website" \
-v "/var/www/${BRANCH_NAME}.wikigdrive.com:/dist/hugo" \
--env CONFIG_TOML="/site/config/_default/config.toml" --env BASE_URL="https://${BRANCH_NAME}.wikigdrive.com" \
wgd-action-runner:${BRANCH_NAME} /steps/step_render_hugo
- name: Copy index for vite
run: mkdir -p ${GITHUB_WORKSPACE}/dist/hugo && cp -rf /var/www/${BRANCH_NAME}.wikigdrive.com/* ${GITHUB_WORKSPACE}/dist/hugo

- uses: whoan/docker-build-with-cache-action@v5
with:
image_name: "wikigdrive-feature"
image_tag: "${{ github.sha }}"
push_image_and_stages: false
build_extra_args: "{'--build-arg': 'GIT_SHA=${{ github.sha }}'}"

- name: Stop and remove
run: docker stop "wikigdrive-${BRANCH_NAME}" ; docker rm "wikigdrive-${BRANCH_NAME}"
continue-on-error: true

- name: "Create empty volume"
run: docker volume rm -f "wikiGDrive${BRANCH_NAME}" ; docker volume create "wikiGDrive${BRANCH_NAME}"

- name: Start
run: |
docker run -d --name "wikigdrive-${BRANCH_NAME}" \
--restart unless-stopped \
--network nginx \
-v "wikiGDrive${BRANCH_NAME}":/data \
-v /home/wikigdrive/service_account.json:/service_account.json \
-v /home/wikigdrive/env.develop:/usr/src/app/.env \
-v /var/run/docker.sock:/var/run/docker.sock \
-v "/var/www/${BRANCH_NAME}.wikigdrive.com:/usr/src/app/dist/hugo" \
-e "GIT_SHA=${GITHUB_SHA}" \
-e "ZIPKIN_URL=https://${BRANCH_NAME}.wikigdrive.com/zipkin" \
-e "ZIPKIN_SERVICE=wikigdrive-${BRANCH_NAME}" \
--link=zipkin:zipkin \
"wikigdrive-feature:${GITHUB_SHA}" wikigdrive \
--service_account /service_account.json \
--share_email [email protected] \
--workdir /data \
server 3000
- name: "Nginx setup"
run: "TODO"

- name: Create pull request
id: open-pr
uses: repo-sync/pull-request@v2
Expand Down
102 changes: 102 additions & 0 deletions .github/workflows/pr-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: Feat PR Deploy

on:
pull_request:
branches:
types: [submitted, edited, synchronize]

jobs:
test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3

- run: sudo apt-get update
- run: sudo apt-get install -y libkrb5-dev

- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20
cache: npm

- name: Install node_modules
run: npm install

- name: Lint
run: npm run lint

- name: Test
run: npm run test

build:
needs: test
runs-on: wgd-dev

steps:
- name: Extract branch name
shell: bash
run: echo "::set-env name=BRANCH_NAME::$(echo ${GITHUB_REF#refs/heads/} | sed 's/\//_/g')"
- name: Extract PR number
shell: bash
run: echo "::set-env name=PR_NUMBER::$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')"
- name: Test
run: echo "${PR_NUMBER}"

- uses: actions/checkout@v3

- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20
cache: npm

- name: Build action runner
run: docker build -t "wgd-action-runner:pr-{PR_NUMBER}" --build-arg "GIT_SHA=${GITHUB_SHA}" apps/wgd-action-runner

- name: Build hugo docs
run: |
docker run \
-v "${GITHUB_WORKSPACE}/hugo:/site" \
-v "${GITHUB_WORKSPACE}/website:/website" \
-v "/var/www/pr-{PR_NUMBER}.wikigdrive.com:/dist/hugo" \
--env CONFIG_TOML="/site/config/_default/config.toml" --env BASE_URL="https://pr-{PR_NUMBER}.wikigdrive.com" \
wgd-action-runner:pr-{PR_NUMBER} /steps/step_render_hugo
- name: Copy index for vite
run: mkdir -p ${GITHUB_WORKSPACE}/dist/hugo && cp -rf /var/www/pr-{PR_NUMBER}.wikigdrive.com/* ${GITHUB_WORKSPACE}/dist/hugo

- uses: whoan/docker-build-with-cache-action@v5
with:
image_name: "wikigdrive-feature"
image_tag: "${{ github.sha }}"
push_image_and_stages: false
build_extra_args: "{'--build-arg': 'GIT_SHA=${{ github.sha }}'}"

- name: Stop and remove
run: docker stop "pr-{PR_NUMBER}" ; docker rm "pr-{PR_NUMBER}"
continue-on-error: true

- name: "Create empty volume"
run: docker volume rm -f "pr-{PR_NUMBER}" ; docker volume create "pr-{PR_NUMBER}"

- name: Start
run: |
docker run -d --name "pr-{PR_NUMBER}" \
--restart unless-stopped \
--network nginx \
-v "pr-{PR_NUMBER}":/data \
-v /home/wikigdrive/service_account.json:/service_account.json \
-v /home/wikigdrive/env.develop:/usr/src/app/.env \
-v /var/run/docker.sock:/var/run/docker.sock \
-v "/var/www/pr-{PR_NUMBER}.wikigdrive.com:/usr/src/app/dist/hugo" \
-e "GIT_SHA=${GITHUB_SHA}" \
-e "ZIPKIN_URL=https://pr-{PR_NUMBER}.wikigdrive.com/zipkin" \
-e "ZIPKIN_SERVICE=pr-{PR_NUMBER}" \
--link=zipkin:zipkin \
"wikigdrive-feature:${GITHUB_SHA}" wikigdrive \
--service_account /service_account.json \
--share_email [email protected] \
--workdir /data \
server 8080

0 comments on commit 4ec58ea

Please sign in to comment.