From d66e9f001992903055d7861f265556ecbe27296c Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Tue, 1 Nov 2022 18:45:09 -0400 Subject: [PATCH 01/13] Branched off dev. From 65afda55e88d096b5639039aa287f102fd82e140 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 16:51:33 -0400 Subject: [PATCH 02/13] Change starting port to 3009. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8210108..f34f45e 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "web-vitals": "^2.1.4" }, "scripts": { - "start": "react-scripts start", + "start": "PORT=3009 react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" From 1b7598f0379c185a93fed8fddeb197aa822c3402 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 16:51:46 -0400 Subject: [PATCH 03/13] Add docker file. --- Dockerfile.dev | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Dockerfile.dev diff --git a/Dockerfile.dev b/Dockerfile.dev new file mode 100644 index 0000000..618b819 --- /dev/null +++ b/Dockerfile.dev @@ -0,0 +1,6 @@ +FROM node:14-alpine +WORKDIR /home/node/app/pims +COPY --chown=node:node . . +# RUN npm install; The dockerRunnerDev.sh runs npm install +# EXPOSE 3000; This container does not listen for any incoming traffic. Thus EXPOSE is not needed. +CMD ./dockerRunnerDev.sh \ No newline at end of file From 44e98c7a63fea7ca7092ec749c44b85e1a4ebe56 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 16:52:01 -0400 Subject: [PATCH 04/13] add docker runner --- dockerRunnerDev.sh | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 dockerRunnerDev.sh diff --git a/dockerRunnerDev.sh b/dockerRunnerDev.sh new file mode 100755 index 0000000..4198943 --- /dev/null +++ b/dockerRunnerDev.sh @@ -0,0 +1,43 @@ +#!/bin/sh + +# Handle closing application on signal interrupt (ctrl + c) +trap 'kill $CONTINUOUS_INSTALL_PID $SERVER_PID; gradle --stop; exit' INT + +mkdir logs +# Reset log file content for new application boot +echo "*** Logs for continuous installer ***" > ./logs/installer.log +echo "*** Logs for 'npm run start' ***" > ./logs/runner.log + +# Print that the application is starting in watch mode +echo "starting application in watch mode..." + +# Start the continious build listener process +echo "starting continuous installer..." +npm install + +( package_modify_time=$(stat -c %Y package.json) +package_lock_modify_time=$(stat -c %Y package-lock.json) +while sleep 1 +do + new_package_modify_time=$(stat -c %Y package.json) + new_package_lock_modify_time=$(stat -c %Y package-lock.json) + + if [[ "$package_modify_time" != "$new_package_modify_time" ]] || [[ "$package_lock_modify_time" != "$new_package_lock_modify_time" ]] + then + echo "running npm install..." + npm install | tee ./logs/installer.log + fi + + package_modify_time=$new_package_modify_time + package_lock_modify_time=$new_package_lock_modify_time + +done ) & CONTINUOUS_INSTALL_PID=$! + +# Start server process once initial build finishes +( npm run start | tee ./logs/runner.log ) & SERVER_PID=$! + +# Handle application background process exiting +wait $CONTINUOUS_INSTALL_PID $SERVER_PID +EXIT_CODE=$? +echo "application exited with exit code $EXIT_CODE..." + From d5baf7881815620b0c2ee60119a0f1c20ea46dc9 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:15:48 -0400 Subject: [PATCH 05/13] file rename. --- .github/workflows/docker-cd-dev.yml | 27 ++++++++++++++++++++++ .github/workflows/docker-cd.yml | 35 ----------------------------- 2 files changed, 27 insertions(+), 35 deletions(-) create mode 100644 .github/workflows/docker-cd-dev.yml delete mode 100644 .github/workflows/docker-cd.yml diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml new file mode 100644 index 0000000..1143012 --- /dev/null +++ b/.github/workflows/docker-cd-dev.yml @@ -0,0 +1,27 @@ +name: Docker Image CD + +on: + push: + branches: [ dev ] + workflow_dispatch: + +jobs: + docker-cd: + runs-on: ubuntu-latest + steps: + + - name: Checkout Repository + uses: actions/checkout@v3 + + - name: Log in to Docker Hub + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_TOKEN }} + + - name: Build and push Base Node Docker image + uses: docker/build-push-action@v2 + with: + context: . + push: true + tags: codexrems/pims:REMSvExperimental \ No newline at end of file diff --git a/.github/workflows/docker-cd.yml b/.github/workflows/docker-cd.yml deleted file mode 100644 index ec9b9c7..0000000 --- a/.github/workflows/docker-cd.yml +++ /dev/null @@ -1,35 +0,0 @@ -# name: Docker Image CD - -# on: -# push: -# branches: [ master ] -# workflow_dispatch: - -# jobs: -# docker-cd: -# runs-on: ubuntu-latest -# steps: - -# - name: Checkout Repository -# uses: actions/checkout@v2 - -# - name: Log in to Docker Hub -# uses: docker/login-action@v1 -# with: -# username: ${{ secrets.DOCKER_USERNAME }} -# password: ${{ secrets.DOCKER_TOKEN }} - -# - name: Build and push Base Node Docker image -# uses: docker/build-push-action@v2 -# with: -# context: . -# file: Dockerfile.base -# push: true -# tags: codexrems/node14-pkg-config:REMSvCurrent - -# - name: Build and push Server Docker image -# uses: docker/build-push-action@v2 -# with: -# context: . -# push: true -# tags: codexrems/pharmacy-information-system:REMSvCurrent From 68f166ac106430e02071c0d1898313da973e0a68 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:17:09 -0400 Subject: [PATCH 06/13] update desc. --- .github/workflows/docker-cd-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml index 1143012..1a0c530 100644 --- a/.github/workflows/docker-cd-dev.yml +++ b/.github/workflows/docker-cd-dev.yml @@ -19,7 +19,7 @@ jobs: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_TOKEN }} - - name: Build and push Base Node Docker image + - name: Build and push pims-ui Docker image uses: docker/build-push-action@v2 with: context: . From 9d27f467b1a06845e818807c4012396d86dbfd30 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:33:15 -0400 Subject: [PATCH 07/13] testing CICD on current feature branch. Also add CI file --- .github/workflows/docker-cd-dev.yml | 2 +- .github/workflows/docker-ci-dev.yml | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/docker-ci-dev.yml diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml index 1a0c530..39182a5 100644 --- a/.github/workflows/docker-cd-dev.yml +++ b/.github/workflows/docker-cd-dev.yml @@ -2,7 +2,7 @@ name: Docker Image CD on: push: - branches: [ dev ] + branches: [ dev, rems-286-pimsCICD ] workflow_dispatch: jobs: diff --git a/.github/workflows/docker-ci-dev.yml b/.github/workflows/docker-ci-dev.yml new file mode 100644 index 0000000..fd3b597 --- /dev/null +++ b/.github/workflows/docker-ci-dev.yml @@ -0,0 +1,17 @@ +name: Docker Image CI + +on: + push_request: + branches: [ dev, rems-286-pimsCICD ] + workflow_dispatch: + +jobs: + docker-ci: + runs-on: ubuntu-latest + steps: + + - name: Checkout Repository + uses: actions/checkout@v3 + + - name: Test Server Docker image Builds + run: docker build . \ No newline at end of file From 21b422b037eed72f836c59584d0e934967cea5f4 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:34:51 -0400 Subject: [PATCH 08/13] Update event name --- .github/workflows/docker-ci-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-ci-dev.yml b/.github/workflows/docker-ci-dev.yml index fd3b597..e905eab 100644 --- a/.github/workflows/docker-ci-dev.yml +++ b/.github/workflows/docker-ci-dev.yml @@ -1,7 +1,7 @@ name: Docker Image CI on: - push_request: + push: branches: [ dev, rems-286-pimsCICD ] workflow_dispatch: From 54e60f625b096d57b987c1369b1185050d7d2c32 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:38:54 -0400 Subject: [PATCH 09/13] Update --- .github/workflows/docker-cd-dev.yml | 2 +- Dockerfile.dev | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml index 39182a5..1a0c530 100644 --- a/.github/workflows/docker-cd-dev.yml +++ b/.github/workflows/docker-cd-dev.yml @@ -2,7 +2,7 @@ name: Docker Image CD on: push: - branches: [ dev, rems-286-pimsCICD ] + branches: [ dev ] workflow_dispatch: jobs: diff --git a/Dockerfile.dev b/Dockerfile.dev index 618b819..57d3098 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,5 +1,5 @@ FROM node:14-alpine -WORKDIR /home/node/app/pims +WORKDIR /home/node/app/ COPY --chown=node:node . . # RUN npm install; The dockerRunnerDev.sh runs npm install # EXPOSE 3000; This container does not listen for any incoming traffic. Thus EXPOSE is not needed. From a097ecc4eb73e074b8559d449a384e1e1fea98e5 Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:40:18 -0400 Subject: [PATCH 10/13] revert to checkout@v2 --- .github/workflows/docker-ci-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-ci-dev.yml b/.github/workflows/docker-ci-dev.yml index e905eab..bcb981b 100644 --- a/.github/workflows/docker-ci-dev.yml +++ b/.github/workflows/docker-ci-dev.yml @@ -11,7 +11,7 @@ jobs: steps: - name: Checkout Repository - uses: actions/checkout@v3 + uses: actions/checkout@v2 - name: Test Server Docker image Builds run: docker build . \ No newline at end of file From 162682eca82431540da1fd32b8800c7d34cb233c Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:43:06 -0400 Subject: [PATCH 11/13] specify docker dev file --- .github/workflows/docker-ci-dev.yml | 4 ++-- Dockerfile.dev | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-ci-dev.yml b/.github/workflows/docker-ci-dev.yml index bcb981b..fd07a78 100644 --- a/.github/workflows/docker-ci-dev.yml +++ b/.github/workflows/docker-ci-dev.yml @@ -11,7 +11,7 @@ jobs: steps: - name: Checkout Repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Test Server Docker image Builds - run: docker build . \ No newline at end of file + run: docker build -f Dockerfile.dev . \ No newline at end of file diff --git a/Dockerfile.dev b/Dockerfile.dev index 57d3098..618b819 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,5 +1,5 @@ FROM node:14-alpine -WORKDIR /home/node/app/ +WORKDIR /home/node/app/pims COPY --chown=node:node . . # RUN npm install; The dockerRunnerDev.sh runs npm install # EXPOSE 3000; This container does not listen for any incoming traffic. Thus EXPOSE is not needed. From 40447066bd459b14eab390f47145db463fd46daf Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Wed, 2 Nov 2022 19:47:33 -0400 Subject: [PATCH 12/13] Remove local ci/cd testing --- .github/workflows/docker-ci-dev.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker-ci-dev.yml b/.github/workflows/docker-ci-dev.yml index fd07a78..ff6294c 100644 --- a/.github/workflows/docker-ci-dev.yml +++ b/.github/workflows/docker-ci-dev.yml @@ -2,7 +2,7 @@ name: Docker Image CI on: push: - branches: [ dev, rems-286-pimsCICD ] + branches: [ dev ] workflow_dispatch: jobs: From 2b3c40e6ce38208b2d7b3582bef79c8d26e1f45c Mon Sep 17 00:00:00 2001 From: Kenny Ung Date: Tue, 8 Nov 2022 14:40:12 -0500 Subject: [PATCH 13/13] Resolve github reviews. --- .github/workflows/docker-cd-dev.yml | 2 +- Dockerfile.dev | 3 +-- package.json | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/docker-cd-dev.yml b/.github/workflows/docker-cd-dev.yml index 1a0c530..c0aea68 100644 --- a/.github/workflows/docker-cd-dev.yml +++ b/.github/workflows/docker-cd-dev.yml @@ -1,4 +1,4 @@ -name: Docker Image CD +name: Docker Development Image CD on: push: diff --git a/Dockerfile.dev b/Dockerfile.dev index 618b819..5337189 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -1,6 +1,5 @@ FROM node:14-alpine WORKDIR /home/node/app/pims COPY --chown=node:node . . -# RUN npm install; The dockerRunnerDev.sh runs npm install -# EXPOSE 3000; This container does not listen for any incoming traffic. Thus EXPOSE is not needed. +RUN npm install CMD ./dockerRunnerDev.sh \ No newline at end of file diff --git a/package.json b/package.json index f34f45e..fbb4f9a 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "web-vitals": "^2.1.4" }, "scripts": { - "start": "PORT=3009 react-scripts start", + "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "react-scripts eject" @@ -40,4 +40,4 @@ "last 1 safari version" ] } -} +} \ No newline at end of file