Skip to content
This repository was archived by the owner on Sep 12, 2024. It is now read-only.

Commit b88b457

Browse files
authored
Merge branch 'deriv-com:master' into performance-mark-on-binary
2 parents fdcb436 + e4e027d commit b88b457

File tree

23 files changed

+2385
-2449
lines changed

23 files changed

+2385
-2449
lines changed

.github/actions/build_and_push_docker_image/action.yml

Lines changed: 33 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,36 +31,53 @@ inputs:
3131
runs:
3232
using: composite
3333
steps:
34-
- name: Setup Environment variables
35-
run: |
36-
echo "NAMESPACE=${{ inputs.K8S_NAMESPACE }}" >> "$GITHUB_ENV"
37-
echo "KUBE_SERVER=${{ inputs.KUBE_SERVER }}" >> "$GITHUB_ENV"
38-
echo "SERVICEACCOUNT_TOKEN=${{ inputs.SERVICEACCOUNT_TOKEN }}" >> "$GITHUB_ENV"
39-
echo "DOCKERHUB_ORGANISATION=${{ inputs.DOCKERHUB_ORGANISATION }}" >> "$GITHUB_ENV"
40-
echo "CA_CRT=${{ inputs.CA_CRT }}" >> "$GITHUB_ENV"
41-
echo "APP_NAME=deriv-static-bot" >> "$GITHUB_ENV"
42-
echo "APP_VERSION=${{ inputs.APP_VERSION }}" >> "$GITHUB_ENV"
43-
shell: bash
4434
- name: Build docker image 🐳
45-
run: docker build -t ${DOCKERHUB_ORGANISATION}/${APP_NAME}:${APP_VERSION} -t ${DOCKERHUB_ORGANISATION}/${APP_NAME}:${{ github.ref_name }} .
35+
env:
36+
DOCKERHUB_ORGANISATION: ${{ inputs.DOCKERHUB_ORGANISATION }}
37+
APP_NAME: deriv-static-bot
38+
APP_VERSION: ${{ inputs.APP_VERSION }}
39+
GITHUB_REF_NAME: ${{ github.ref_name }}
40+
run: docker build -t $DOCKERHUB_ORGANISATION/$APP_NAME:$APP_VERSION -t $DOCKERHUB_ORGANISATION/$APP_NAME:$GITHUB_REF_NAME .
4641
shell: bash
42+
4743
- name: Verify nginx image
44+
env:
45+
DOCKERHUB_ORGANISATION: ${{ inputs.DOCKERHUB_ORGANISATION }}
46+
APP_NAME: deriv-static-bot
47+
GITHUB_REF_NAME: ${{ github.ref_name }}
4848
run: |
4949
set -e
50-
docker run --rm ${DOCKERHUB_ORGANISATION}/${APP_NAME}:${{ github.ref_name }} nginx -t
50+
docker run --rm $DOCKERHUB_ORGANISATION/$APP_NAME:$GITHUB_REF_NAME nginx -t
5151
echo "docker image validated successfully"
5252
shell: bash
53+
5354
- name: Pushing Image to docker hub 🐳
55+
env:
56+
DOCKERHUB_ORGANISATION: ${{ inputs.DOCKERHUB_ORGANISATION }}
57+
DOCKERHUB_PASSWORD: ${{ inputs.DOCKERHUB_PASSWORD }}
58+
DOCKERHUB_USERNAME: ${{ inputs.DOCKERHUB_USERNAME }}
59+
APP_NAME: deriv-static-bot
60+
APP_VERSION: ${{ inputs.APP_VERSION }}
61+
GITHUB_REF_NAME: ${{ github.ref_name }}
5462
run: |
55-
echo ${{ inputs.DOCKERHUB_PASSWORD }}| docker login -u ${{ inputs.DOCKERHUB_USERNAME }} --password-stdin
56-
docker push ${DOCKERHUB_ORGANISATION}/${APP_NAME}:${APP_VERSION}
57-
docker push ${DOCKERHUB_ORGANISATION}/${APP_NAME}:${{ github.ref_name }}
63+
echo $DOCKERHUB_PASSWORD | docker login -u $DOCKERHUB_USERNAME --password-stdin
64+
docker push $DOCKERHUB_ORGANISATION/$APP_NAME:$APP_VERSION
65+
docker push $DOCKERHUB_ORGANISATION/$APP_NAME:$GITHUB_REF_NAME
5866
shell: bash
67+
5968
- name: Deploy 🚀
69+
env:
70+
CA_CRT: ${{ inputs.CA_CRT }}
71+
GITHUB_REF_NAME: ${{ github.ref_name }}
72+
APP_NAME: deriv-static-bot
73+
NAMESPACE: ${{ inputs.K8S_NAMESPACE }}
74+
KUBE_SERVER: ${{ inputs.KUBE_SERVER }}
75+
SERVICEACCOUNT_TOKEN: ${{ inputs.SERVICEACCOUNT_TOKEN }}
76+
DOCKERHUB_ORGANISATION: ${{ inputs.DOCKERHUB_ORGANISATION }}
6077
run: |
6178
git clone https://github.com/binary-com/devops-ci-scripts
6279
cd devops-ci-scripts/k8s-build_tools
6380
echo $CA_CRT | base64 --decode > ca.crt
6481
export CA="ca.crt"
65-
./release.sh ${APP_NAME} ${{ github.ref_name }}
82+
./release.sh $APP_NAME $GITHUB_REF_NAME
6683
shell: bash

.github/actions/send_slack_notifications/action.yml

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,23 @@ inputs:
1414
description: "Version"
1515
required: true
1616
default: "N/A"
17+
app_url:
18+
description: "App URL"
19+
required: true
20+
default: "https://bot.deriv.com/"
1721
runs:
1822
using: composite
1923
steps:
2024
- name: Send Slack Notification on Success
21-
2225
if: inputs.status == 'success'
23-
run: |
24-
curl -X POST -H 'Content-type: application/json' \
25-
--data '{
26-
"text": "${{ inputs.RELEASE_TYPE }} Release succeeded for deriv bot with version ${{ inputs.VERSION }}"
27-
}' \
28-
${{ inputs.SLACK_WEBHOOK_URL }}
29-
shell: bash
26+
uses: 'deriv-com/shared-actions/.github/actions/send_slack_notification@master'
27+
with:
28+
SLACK_WEBHOOK_URL: ${{ inputs.SLACK_WEBHOOK_URL }}
29+
MESSAGE: ${{ inputs.RELEASE_TYPE }} Release succeeded for ${{ inputs.APP_URL }} with version ${{ inputs.VERSION }}
3030

3131
- name: Send Slack Notification on Failure
3232
if: inputs.status == 'failure'
33-
run: |
34-
curl -X POST -H 'Content-type: application/json' \
35-
--data '{
36-
"text": "${{ inputs.RELEASE_TYPE }} Release failed for deriv bot with version ${{ inputs.VERSION }}"
37-
}' \
38-
${{ inputs.SLACK_WEBHOOK_URL }}
39-
shell: bash
33+
uses: 'deriv-com/shared-actions/.github/actions/send_slack_notification@master'
34+
with:
35+
SLACK_WEBHOOK_URL: ${{ inputs.SLACK_WEBHOOK_URL }}
36+
MESSAGE: ${{ inputs.RELEASE_TYPE }} Release failed for ${{ inputs.APP_URL }} with version ${{ inputs.VERSION }}

.github/actions/versioning/action.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,12 @@ runs:
88
using: composite
99
steps:
1010
- name: Set version
11+
env:
12+
RELEASE_TYPE: ${{ inputs.RELEASE_TYPE }}
13+
GITHUB_RUN_NUMBER: ${{ github.run_number }}
1114
run: |
1215
current_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')
13-
version="${{ inputs.RELEASE_TYPE }}-GH_Run#:${{ github.run_number }}-Date:$current_date"
16+
version="$RELEASE_TYPE-GH_Run#:$GITHUB_RUN_NUMBER-Date:$current_date"
1417
echo "Setting version to: $version"
1518
echo "VERSION=$version" >> $GITHUB_ENV
1619
shell: bash

.github/workflows/release_production.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,12 @@ jobs:
6464
- name: Checkout
6565
uses: actions/checkout@v4
6666
- name: Conclusion
67-
uses: technote-space/workflow-conclusion-action@v3
67+
uses: technote-space/workflow-conclusion-action@45ce8e0eb155657ab8ccf346ade734257fd196a5
6868
- name: Send Slack Notification
6969
uses: "./.github/actions/send_slack_notifications"
7070
with:
7171
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
7272
status: ${{ env.WORKFLOW_CONCLUSION }}
7373
release_type: Production
74-
version: ${{ needs.release_production.outputs.RELEASE_VERSION}}
74+
version: ${{ needs.release_production.outputs.RELEASE_VERSION }}
75+
app_url: https://bot.deriv.com/

.github/workflows/release_staging.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,3 +46,21 @@ jobs:
4646
SERVICEACCOUNT_TOKEN: ${{ secrets.SERVICEACCOUNT_TOKEN }}
4747
CA_CRT: ${{ secrets.CA_CRT }}
4848
APP_VERSION: latest-staging
49+
send_slack_notification:
50+
if: always()
51+
needs: [release_staging]
52+
environment: Staging
53+
runs-on: ubuntu-latest
54+
steps:
55+
- name: Checkout
56+
uses: actions/checkout@v4
57+
- name: Conclusion
58+
uses: technote-space/workflow-conclusion-action@45ce8e0eb155657ab8ccf346ade734257fd196a5
59+
- name: Send Slack Notification
60+
uses: "./.github/actions/send_slack_notifications"
61+
with:
62+
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
63+
status: ${{ env.WORKFLOW_CONCLUSION }}
64+
release_type: Staging
65+
version: latest-master
66+
app_url: https://staging-bot.deriv.com/

0 commit comments

Comments
 (0)