Skip to content
Merged
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
bebb4b2
First Skeleton
mavalosn Apr 20, 2023
ec0cdb8
Second Commit
mavalosn May 9, 2023
965d3dd
Second Commit
mavalosn May 9, 2023
4d61b8d
Second Commit
mavalosn May 9, 2023
94d7632
Second Commit
mavalosn May 9, 2023
e1ca012
Second Commit
mavalosn May 9, 2023
439993c
Second Commit
mavalosn May 9, 2023
5ffd4e0
Second Commit
mavalosn May 9, 2023
ac6ab55
Second Commit
mavalosn May 9, 2023
e471512
Validate repo
mavalosn May 10, 2023
fd84ea4
Validate Keys
mavalosn May 10, 2023
25f2e14
Validate Build PM4
mavalosn May 10, 2023
9c4ee8b
Validate Build PM4
mavalosn May 10, 2023
2b0a522
Validate Deploy
mavalosn May 12, 2023
351e81a
Validate repo
mavalosn May 15, 2023
197d8e1
Validate repo
mavalosn May 15, 2023
bba1437
Validate new Branchs
mavalosn May 16, 2023
1cce8b5
Merge branch 'develop' of github.com:ProcessMaker/processmaker into k…
mavalosn May 17, 2023
1208a00
Validate deploy STM
mavalosn May 30, 2023
3a7d285
Validate Branch kr-github-actions
mavalosn May 30, 2023
094c4b5
Validate General Params
mavalosn May 31, 2023
d2e59fc
Validate FOUR-8780
mavalosn Jun 1, 2023
c0033cb
Validate FOUR-8780
mavalosn Jun 1, 2023
9807de7
Validate FOUR-8780
mavalosn Jun 2, 2023
1a4892f
Fix ticket FOUR-8781
mavalosn Jun 14, 2023
784ce23
Fix ticket FOUR-8805
mavalosn Jun 14, 2023
8d85cd3
Merge branch 'develop' into kr-github-actions
nolanpro Jun 15, 2023
59959a0
Update github actions
nolanpro Jun 15, 2023
b6ea4fd
FOUR-8595
mavalosn Jun 20, 2023
71c0bc7
Merge branch 'kr-github-actions' of github.com:ProcessMaker/processma…
mavalosn Jun 20, 2023
b79acaf
Remove ci:deploy tag checl. Its now in pm4-stm-docker
nolanpro Jun 20, 2023
73550a2
Try layer caching
nolanpro Jun 20, 2023
89fe471
Merge branch 'develop' into kr-github-actions
nolanpro Jun 20, 2023
21858b1
Update deploy-pm4.yml
nolanpro Jun 20, 2023
183df4f
Remove docker layer caching
nolanpro Jun 22, 2023
c9d2215
Add missing service name for build
nolanpro Jun 23, 2023
52d66f4
Merge branch 'develop' into kr-github-actions
nolanpro Jun 23, 2023
4033795
Update deploy-pm4.yml
nolanpro Jun 23, 2023
33ec1b1
Update deploy-pm4.yml
nolanpro Jun 23, 2023
787cc15
Merge branch 'develop' into kr-github-actions
nolanpro Jun 23, 2023
0f0f1f5
Update deploy-pm4.yml
nolanpro Jun 23, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
197 changes: 197 additions & 0 deletions .github/workflows/deploy-pm4.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
name: BUILD-PM4
on:
#push:
# branches:
# - kr-github-actions
pull_request:
types: [opened, reopened, synchronize, edited]
#schedule:
# - cron: '0 0 * * *' # every day at midnight
#workflow_dispatch:
#pull_request:
# branches:
# - main
workflow_dispatch:
workflow_call:
env:
SHA: ${{github.event.pull_request.head.sha}}
PROJECT: ${{github.event.pull_request.head.repo.name}}
BODY: ${{github.event.pull_request.body}}
PACKAGE_URL: ${{github.event.pull_request.head.repo.ssh_url}}
PACKAGE_BRANCH: ${{github.event.pull_request.head.ref}}
#MY_GITHUB_TOKEN: ${{ secrets.GH_STATUS_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GIT_TOKEN }}
#GIT_TOKEN: ${{ secrets.MY_GH_TOKEN }}
OWNER: ${{ github.event.pull_request.head.repo.owner.login }}
#Other Parameters
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}
aws-url: ${{ secrets.AWS_URL }}
STM_TOKEN: ${{ secrets.STM_TOKEN }}
CI_PACKAGE_BRANCH: ${{github.event.pull_request.head.ref}}
CI_PROJECT: ${{github.event.pull_request.head.repo.name}}
CI_TEST: $CI_PROJECT
IMAGE_TAG1: $(echo "$CI_PROJECT-$CI_PACKAGE_BRANCH" | sed "s;/;-;g")
GITHUB_COMMENT: ${{ secrets.GH_COMMENT }}
pull_req_id: ${{github.event.pull_request.number}}
jobs:
job1:
name: build-stm-image
runs-on: ubuntu-22.04
steps:
- name: Export Params
run: |
echo "REPOSITORY=${{env.aws-url}}/enterprise" >> $GITHUB_ENV
echo "TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE=${{env.aws-url}}/enterprise:${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
#Additional
echo "CI_PR_BODY=1" >> $GITHUB_ENV
echo "CACHEBUSTER=abc" >> $GITHUB_ENV
- name: Clone Repo STM
run: |
git clone --depth 1 -b cicd "https://$GITHUB_TOKEN@github.com/ProcessMaker/pm4-stm-docker.git" pm4-stm-docker
cd pm4-stm-docker
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ env.aws-access-key-id }}
aws-secret-access-key: ${{ env.aws-secret-access-key }}
aws-region: ${{ env.aws-region }}
- name: Login to ECR
run: |
aws ecr get-login-password | docker login --username AWS --password-stdin ${{env.aws-url}}
- name: Build and Push the image to ECR
run: |
cd pm4-stm-docker
docker stop $(docker ps -a -q) || true
docker container prune -f
docker-compose down -v
docker-compose build processmaker
docker push ${IMAGE}
job2:
name: deploy-stm
needs: job1
runs-on: ubuntu-22.04
container:
image: cimg/php:7.4
options: --user root
steps:
- name: Export Params
run: |
echo "REPOSITORY=${{env.aws-url}}/enterprise" >> $GITHUB_ENV
echo "TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE_TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE=${{env.aws-url}}/enterprise:${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "STM_TOKEN=${{env.STM_TOKEN}}" >> $GITHUB_ENV
- name: Clone Repo STM
run: |
git clone --depth 1 -b cicd "https://$GITHUB_TOKEN@github.com/ProcessMaker/pm4-stm-docker.git" pm4-stm-docker
cd pm4-stm-docker
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ env.aws-access-key-id }}
aws-secret-access-key: ${{ env.aws-secret-access-key }}
aws-region: ${{ env.aws-region }}
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
- name: Deploy STM
id: stm
run: |
mkdir -p /tmp/workspace
cd pm4-stm-docker/deploy-stm
composer install --no-dev
php run.php
if [ -f "url.txt" ]; then
INSTANCE_URL=$(cat url.txt)
fi
echo "Instance URL: '${INSTANCE_URL}'"
echo "INSTANCE_URL=${INSTANCE_URL}" >> "$GITHUB_ENV"
- name: Publish the URL to the Github PR
if: success() || steps.stm.conclusion == 'success'
run: |
cd pm4-stm-docker
echo "Instance URL: '${INSTANCE_URL}'"
bash ./github_comment.sh "$PROJECT" "$pull_req_id"
job3:
name: run-phpunit
needs: job1
runs-on: ubuntu-22.04
steps:
- name: Export Params
run: |
echo "REPOSITORY=${{env.aws-url}}/enterprise" >> $GITHUB_ENV
echo "TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE=${{env.aws-url}}/enterprise:${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
- name: Clone Repo STM
run: |
git clone --depth 1 -b cicd "https://$GITHUB_TOKEN@github.com/ProcessMaker/pm4-stm-docker.git" pm4-stm-docker
cd pm4-stm-docker
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ env.aws-access-key-id }}
aws-secret-access-key: ${{ env.aws-secret-access-key }}
aws-region: ${{ env.aws-region }}
- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1
- name: PHPUnits
run: |
cd pm4-stm-docker
docker pull $IMAGE
docker-compose down -v
docker-compose build phpunit
docker-compose run phpunit
#job4:
# name: run-benchmarks
# needs: job2
# runs-on: ubuntu-22.04
# steps:
# - name: my-step
# run: |
# echo "Fifth Step"
#job5:
# name: run-cypress
# needs: job2
# runs-on: ubuntu-22.04
# steps:
# - name: my-step
# run: |
# echo "fourth Step"
#job6:
# name: run-cypress-qa
# needs: job2
# runs-on: ubuntu-22.04
# steps:
# - name: my-step
# run: |
# echo "Sixt Step"
job7:
name: Delete Instance
if: github.event.action == 'closed'
runs-on: ubuntu-22.04
container:
image: cimg/php:7.4
options: --user root
steps:
- name: Export Params
run: |
echo "REPOSITORY=${{env.aws-url}}/enterprise" >> $GITHUB_ENV
echo "TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE_TAG=${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "IMAGE=${{env.aws-url}}/enterprise:${{env.IMAGE_TAG1}}" >> $GITHUB_ENV
echo "STM_TOKEN=${{env.STM_TOKEN}}" >> $GITHUB_ENV
- name: Clone Repo STM
run: |
git clone --depth 1 -b cicd "https://$GITHUB_TOKEN@github.com/ProcessMaker/pm4-stm-docker.git" pm4-stm-docker
cd pm4-stm-docker
- name: Delete Instance STM
run: |
mkdir -p /tmp/workspace
cd pm4-stm-docker/deploy-stm
composer install --no-dev
php run-delete-instance.php