forked from overture-stack/arranger
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[PILOT-5250] Added CODEOWNERS and modified arranger admin ui and serv…
…er filter services
- Loading branch information
1 parent
cb54645
commit e4bc6eb
Showing
6 changed files
with
220 additions
and
36 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# Code owners for the .github directory | ||
/.github/ @PilotDataPlatform/indoc-devops |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ name: CI pipeline admin ui | |
on: | ||
push: | ||
branches: | ||
- patched-version | ||
- PILOT-5250 | ||
paths: | ||
- 'modules/admin-ui/**' | ||
pull_request: | ||
|
@@ -14,18 +14,108 @@ on: | |
|
||
jobs: | ||
|
||
build_and_publish: | ||
uses: PilotDataPlatform/shared-ci-tools/.github/workflows/reusable_build_and_publish_pilot.yml@main | ||
with: | ||
matrix_config: '["arranger-admin-ui"]' | ||
docker_registry: 'pilotdataplatform.azurecr.io' | ||
service_name: 'arranger-admin-ui' | ||
secrets: inherit | ||
|
||
trigger_deployment: | ||
needs: [build_and_publish] | ||
uses: PilotDataPlatform/shared-ci-tools/.github/workflows/reusable_trigger_deployment_pilot.yml@main | ||
with: | ||
service_name: 'arranger-admin-ui' | ||
app_version: "${{needs.build_and_publish.outputs.app_version}}" | ||
secrets: inherit | ||
extract-branch-name: | ||
runs-on: ubuntu-20.04 | ||
outputs: | ||
branch: ${{steps.extract_branch.outputs.branch}} | ||
steps: | ||
- name: Extract Branch Name | ||
id: extract_branch | ||
shell: bash | ||
run: echo "branch=${GITHUB_REF#refs/heads/}" >> $GITHUB_OUTPUT | ||
get-version: | ||
runs-on: ubuntu-20.04 | ||
outputs: | ||
app_version: ${{steps.get-version.outputs.app_version}} | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 | ||
- name: Get Version | ||
id: get-version | ||
shell: bash | ||
run: | | ||
BRANCH=${GITHUB_REF#refs/heads/} | ||
BASE_VERSION=`sed -n 's/^ *"version":.*"\([^"]*\)".*/\1/p' package.json` | ||
echo "app_version=$BASE_VERSION" >> $GITHUB_OUTPUT | ||
build-and-push-docker-image: | ||
needs: [extract-branch-name, get-version] | ||
if: ${{ needs.extract-branch-name.outputs.branch == 'patched-version'}} | ||
name: Build admin ui Docker image and push to repositories | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 | ||
- name: Set up Docker Buildx | ||
id: buildx | ||
uses: docker/setup-buildx-action@v2 | ||
- name: Login to Github Packages | ||
uses: docker/login-action@v2 | ||
with: | ||
registry: pilotdataplatform.azurecr.io | ||
username: ${{ secrets.ACR_CLIENT }} | ||
password: ${{ secrets.ACR_SECRET }} | ||
- name: Docker metadata | ||
id: meta | ||
uses: docker/metadata-action@v4 | ||
with: | ||
# list of Docker images to use as base name for tags | ||
images: | | ||
pilotdataplatform.azurecr.io/arranger/arranger-admin-ui | ||
# generate Docker tags based on the following events/attributes | ||
sep-tags: ',' | ||
tags: | | ||
type=raw,prefix=arranger-admin-ui-,suffix=,value=${{needs.get-version.outputs.app_version}} | ||
# - name: Image digest | ||
# run: echo ${{ steps.meta.outputs.tags }} | ||
- name: Image digest | ||
run: echo ${{ steps.meta.outputs.tags }} | ||
- name: Check if Docker image tags exist | ||
shell: bash | ||
run: | | ||
image_tag=$(echo "${{ steps.meta.outputs.tags }}") | ||
if docker manifest inspect $image_tag >/dev/null; then | ||
echo "Docker image with tag already exists. Please update the version." | ||
exit 1 | ||
else | ||
echo "Image tags do not exist, proceeding..." | ||
fi | ||
- name: Build image and push to GitHub Container Registry | ||
uses: docker/build-push-action@v4 | ||
with: | ||
# relative path to the place where source code with Dockerfile is located | ||
context: . | ||
# Note: tags has to be all lower-case | ||
tags: ${{ steps.meta.outputs.tags }} | ||
# build on feature branches, push only on main branch | ||
push: ${{ github.event_name != 'pull_request' }} | ||
# Sets the target stage to build | ||
target: arranger-admin-ui | ||
|
||
trigger_pilot_dev_deployment: | ||
needs: [build-and-push-docker-image, get-version] | ||
runs-on: ubuntu-20.04 | ||
if: github.event_name != 'pull_request' | ||
steps: | ||
- name: Checkout helmfile repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: PilotDataPlatform/pilot-helmfile | ||
ref: 'main' #always checkout main branch | ||
ssh-key: ${{ secrets.PILOT_HELMFILE_REPO_DEPLOYMENT_KEY }} | ||
|
||
- name: Update service version | ||
run: | | ||
git config user.name "GitHub Actions" | ||
git config user.email "[email protected]" | ||
BASE_FILE='./helmfile.d/values/shared/lab/shared-services-values.yaml' | ||
pattern="arranger_admin_ui" | ||
current_version=$(grep -m 1 $pattern $BASE_FILE) | ||
echo "current version is $current_version" | ||
sed -i "/$pattern/,/charts/ s/$current_version/ $pattern: ${{needs.get-version.outputs.app_version}}/" $BASE_FILE | ||
git add $BASE_FILE | ||
git commit -m "Deploy arranger-admin-server ${{needs.get-version.outputs.app_version}} [app_name:arranger-admin-server, app_version:${{needs.get-version.outputs.app_version}}]" | ||
git push origin main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ name: CI pipeline server filter | |
on: | ||
push: | ||
branches: | ||
- patched-version | ||
- PILOT-5250 | ||
paths: | ||
- 'modules/server-filter/**' | ||
pull_request: | ||
|
@@ -14,18 +14,112 @@ on: | |
|
||
jobs: | ||
|
||
build_and_publish: | ||
uses: PilotDataPlatform/shared-ci-tools/.github/workflows/reusable_build_and_publish_pilot.yml@main | ||
with: | ||
matrix_config: '["arranger-server-filter"]' | ||
docker_registry: 'pilotdataplatform.azurecr.io' | ||
service_name: 'arranger-server' | ||
secrets: inherit | ||
|
||
trigger_deployment: | ||
needs: [build_and_publish] | ||
uses: PilotDataPlatform/shared-ci-tools/.github/workflows/reusable_trigger_deployment_pilot.yml@main | ||
with: | ||
service_name: 'arranger-server-filter' | ||
app_version: "${{needs.build_and_publish.outputs.app_version}}" | ||
secrets: inherit | ||
extract-branch-name: | ||
runs-on: ubuntu-20.04 | ||
outputs: | ||
branch: ${{steps.extract_branch.outputs.branch}} | ||
steps: | ||
- name: Extract Branch Name | ||
id: extract_branch | ||
shell: bash | ||
run: echo "branch=${GITHUB_REF#refs/heads/}" >> $GITHUB_OUTPUT | ||
get-version: | ||
runs-on: ubuntu-20.04 | ||
outputs: | ||
app_version: ${{steps.get-version.outputs.app_version}} | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 | ||
- name: Get Version | ||
id: get-version | ||
shell: bash | ||
run: | | ||
BRANCH=${GITHUB_REF#refs/heads/} | ||
BASE_VERSION=`sed -n 's/^ *"version":.*"\([^"]*\)".*/\1/p' package.json` | ||
if [ $BRANCH == "patched-version" ]; then | ||
echo "app_version=$BASE_VERSION-`git rev-parse --short HEAD`" >> $GITHUB_OUTPUT | ||
else | ||
echo "app_version=$BASE_VERSION" >> $GITHUB_OUTPUT | ||
fi | ||
build-and-push-docker-image: | ||
needs: [extract-branch-name, get-version] | ||
if: ${{ needs.extract-branch-name.outputs.branch == 'patched-version'}} | ||
name: Build server filter Docker image and push to repositories | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 | ||
- name: Set up Docker Buildx | ||
id: buildx | ||
uses: docker/setup-buildx-action@v2 | ||
- name: Login to Github Packages | ||
uses: docker/login-action@v2 | ||
with: | ||
registry: pilotdataplatform.azurecr.io | ||
username: ${{ secrets.ACR_CLIENT }} | ||
password: ${{ secrets.ACR_SECRET }} | ||
- name: Docker metadata | ||
id: meta | ||
uses: docker/metadata-action@v4 | ||
with: | ||
# list of Docker images to use as base name for tags | ||
images: | | ||
pilotdataplatform.azurecr.io/arranger/arranger-server | ||
# generate Docker tags based on the following events/attributes | ||
sep-tags: ',' | ||
tags: | | ||
type=raw,prefix=arranger-server-filter-,suffix=,value=${{needs.get-version.outputs.app_version}} | ||
# - name: Image digest | ||
# run: echo ${{ steps.meta.outputs.tags }} | ||
- name: Image digest | ||
run: echo ${{ steps.meta.outputs.tags }} | ||
- name: Check if Docker image tags exist | ||
shell: bash | ||
run: | | ||
image_tag=$(echo "${{ steps.meta.outputs.tags }}") | ||
if docker manifest inspect $image_tag >/dev/null; then | ||
echo "Docker image with tag already exists. Please update the version." | ||
exit 1 | ||
else | ||
echo "Image tags do not exist, proceeding..." | ||
fi | ||
- name: Build image and push to GitHub Container Registry | ||
uses: docker/build-push-action@v4 | ||
with: | ||
# relative path to the place where source code with Dockerfile is located | ||
context: . | ||
# Note: tags has to be all lower-case | ||
tags: ${{ steps.meta.outputs.tags }} | ||
# build on feature branches, push only on main branch | ||
push: ${{ github.event_name != 'pull_request' }} | ||
# Sets the target stage to build | ||
target: arranger-server | ||
|
||
trigger_pilot_dev_deployment: | ||
needs: [build-and-push-docker-image, get-version] | ||
runs-on: ubuntu-20.04 | ||
if: github.event_name != 'pull_request' | ||
steps: | ||
- name: Checkout helmfile repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: PilotDataPlatform/pilot-helmfile | ||
ref: 'main' #always checkout main branch | ||
ssh-key: ${{ secrets.PILOT_HELMFILE_REPO_DEPLOYMENT_KEY }} | ||
|
||
- name: Update service version | ||
run: | | ||
git config user.name "GitHub Actions" | ||
git config user.email "[email protected]" | ||
BASE_FILE='./helmfile.d/values/development/dev/pilot-versions-values.yaml' | ||
pattern="arranger_server_filter_service" | ||
current_version=$(grep -m 1 $pattern $BASE_FILE) | ||
echo "current version is $current_version" | ||
sed -i "/$pattern/,/service/ s/$current_version/ $pattern: ${{needs.get-version.outputs.app_version}}/" $BASE_FILE | ||
git add $BASE_FILE | ||
git commit -m "Deploy arranger-admin-server ${{needs.get-version.outputs.app_version}} [app_name:arranger-admin-server, app_version:${{needs.get-version.outputs.app_version}}]" | ||
git push origin main |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters