Skip to content

Commit

Permalink
Merge pull request #49 from bancorprotocol/46-add-new-github-action-f…
Browse files Browse the repository at this point in the history
…or-automating-production-job-restart-upon-new-version-update

46 add new GitHub action for automating production job restart upon new version update
  • Loading branch information
mikewcasale authored Jul 31, 2023
2 parents 5dd8bc7 + e7d2f4f commit 659f6ea
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 3 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/restart-jobs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Restart Databricks Jobs

on:
workflow_run:
workflows: ["Bump Version, Generate Changelog, Create Release, and Publish"]
types:
- completed

jobs:
restart_jobs:
runs-on: ubuntu-latest
needs: combined_job
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Restart Databricks Jobs
run: |
echo "Getting list of jobs..."
JOB_LIST=$(curl -X GET -H "Authorization: Bearer ${{ secrets.SERVER_TOKEN }}" "https://${{ secrets.SERVER_DOMAIN }}/api/2.0/jobs/list")
echo "Jobs: $JOB_LIST"
for JOB in $(echo "${JOB_LIST}" | jq -r '.jobs[].job_id'); do
JOB_INFO=$(curl -X GET -H "Authorization: Bearer ${{ secrets.SERVER_TOKEN }}" "https://${{ secrets.SERVER_DOMAIN }}/api/2.0/jobs/get?job_id=$JOB")
CLUSTER_NAME=$(echo "$JOB_INFO" | jq -r '.settings.new_cluster.cluster_name')
if [ "$CLUSTER_NAME" = "Fastlane (v3)" ]; then
echo "Restarting job $JOB on cluster $CLUSTER_NAME..."
RESPONSE=$(curl -X POST -H "Authorization: Bearer ${{ secrets.SERVER_TOKEN }}" -d "{\"job_id\": $JOB}" "https://${{ secrets.SERVER_DOMAIN }}/api/2.0/jobs/run-now")
echo "Response: $RESPONSE"
fi
done
2 changes: 1 addition & 1 deletion resources/NBTest/NBTest_903_FlashloanTokens.py
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ def run_command(mode):
# Wait for the expected log line to appear
expected_log_line = "limiting flashloan_tokens to ["
found = False
result = subprocess.run(cmd, text=True, capture_output=True, check=True)
result = subprocess.run(cmd, text=True, capture_output=True, check=True, timeout=120)

# Check if the expected log line is in the output
if expected_log_line in result.stderr:
Expand Down
2 changes: 1 addition & 1 deletion resources/NBTest/NBTest_904_Bancor3DataValidation.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ def run_command(arb_mode, expected_log_line):

# Wait for the expected log line to appear
found = False
result = subprocess.run(cmd, text=True, capture_output=True, check=True, timeout=60)
result = subprocess.run(cmd, text=True, capture_output=True, check=True, timeout=120)

# Check if the expected log line is in the output
if expected_log_line in result.stderr:
Expand Down
2 changes: 1 addition & 1 deletion resources/NBTest/NBTest_905_RespectMinProfitClickParam.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ def run_command(arb_mode, expected_log_line):

# Wait for the expected log line to appear
found = False
result = subprocess.run(cmd, text=True, capture_output=True, check=True, timeout=60)
result = subprocess.run(cmd, text=True, capture_output=True, check=True, timeout=120)

# Check if the expected log line is in the output
if expected_log_line in result.stderr or expected_log_line in result.stdout:
Expand Down

0 comments on commit 659f6ea

Please sign in to comment.