Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 0 additions & 4 deletions .github/workflows/confluence-daily-dte.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,6 @@ jobs:
echo "TESTRAIL_USERNAME=${{ secrets.TESTRAIL_USERNAME }}" >> $GITHUB_ENV
echo "TESTRAIL_PASSWORD=${{ secrets.TESTRAIL_PASSWORD }}" >> $GITHUB_ENV
echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
echo "ATLASSIAN_API_TOKEN=${{ secrets.ATLASSIAN_API_TOKEN }}" >> $GITHUB_ENV
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/confluence-daily.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,6 @@ jobs:
echo "TESTRAIL_USERNAME=${{ secrets.TESTRAIL_USERNAME }}" >> $GITHUB_ENV
echo "TESTRAIL_PASSWORD=${{ secrets.TESTRAIL_PASSWORD }}" >> $GITHUB_ENV
echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/preflight-push.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,6 @@ env:
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}
ATLASSIAN_HOST: ${{ secrets.ATLASSIAN_HOST }}
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
JIRA_HOST: ${{ secrets.JIRA_HOST }}
JIRA_USER: ${{ secrets.JIRA_USER }}
JIRA_PASSWORD: ${{ secrets.JIRA_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BUGZILLA_API_KEY: ${{ secrets.BUGZILLA_API_KEY }}
BITRISE_HOST: ${{ secrets.BITRISE_HOST }}
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/production-daily-desktop.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@ jobs:
echo "TESTRAIL_USERNAME=${{ secrets.TESTRAIL_USERNAME }}" >> $GITHUB_ENV
echo "TESTRAIL_PASSWORD=${{ secrets.TESTRAIL_PASSWORD }}" >> $GITHUB_ENV
echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
echo "ATLASSIAN_API_TOKEN=${{ secrets.ATLASSIAN_API_TOKEN }}" >> $GITHUB_ENV
echo "ATLASSIAN_HOST=${{ secrets.ATLASSIAN_HOST }}" >> $GITHUB_ENV
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/production-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,6 @@ env:
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}
ATLASSIAN_HOST: ${{ secrets.ATLASSIAN_HOST }}
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
JIRA_HOST: ${{ secrets.JIRA_HOST }}
JIRA_USER: ${{ secrets.JIRA_USER }}
JIRA_PASSWORD: ${{ secrets.JIRA_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BUGZILLA_API_KEY: ${{ secrets.BUGZILLA_API_KEY }}
BITRISE_HOST: ${{ secrets.BITRISE_HOST }}
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/production-weekly-desktop.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@ jobs:
echo "ATLASSIAN_HOST=${{ secrets.ATLASSIAN_HOST }}" >> $GITHUB_ENV
echo "ATLASSIAN_USERNAME=${{ secrets.ATLASSIAN_USERNAME }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
- run: python ./__main__.py ${{ matrix.args }}
continue-on-error: true

Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/production-weekly-firefox-ios-deepdive.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,6 @@ env:
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}
ATLASSIAN_HOST: ${{ secrets.ATLASSIAN_HOST }}
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
JIRA_HOST: ${{ secrets.JIRA_HOST }}
JIRA_USER: ${{ secrets.JIRA_USER }}
JIRA_PASSWORD: ${{ secrets.JIRA_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BUGZILLA_API_KEY: ${{ secrets.BUGZILLA_API_KEY }}
BITRISE_HOST: ${{ secrets.BITRISE_HOST }}
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/production-weekly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,6 @@ jobs:
echo "ATLASSIAN_API_TOKEN=${{ secrets.ATLASSIAN_API_TOKEN }}" >> $GITHUB_ENV
echo "ATLASSIAN_HOST=${{ secrets.ATLASSIAN_HOST }}" >> $GITHUB_ENV
echo "ATLASSIAN_USERNAME=${{ secrets.ATLASSIAN_USERNAME }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV

#- name: Update DB - test runs
# run: python ./__main__.py --report-type test-run-counts --project ALL --num-days 7
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/staging-daily-desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,6 @@ jobs:
echo "TESTRAIL_USERNAME=${{ secrets.TESTRAIL_USERNAME }}" >> $GITHUB_ENV
echo "TESTRAIL_PASSWORD=${{ secrets.TESTRAIL_PASSWORD }}" >> $GITHUB_ENV
echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
echo "ATLASSIAN_API_TOKEN=${{ secrets.ATLASSIAN_API_TOKEN }}" >> $GITHUB_ENV
echo "ATLASSIAN_HOST=${{ secrets.ATLASSIAN_HOST }}" >> $GITHUB_ENV
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/staging-daily.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,6 @@ env:
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}
ATLASSIAN_HOST: ${{ secrets.ATLASSIAN_HOST }}
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
JIRA_HOST: ${{ secrets.JIRA_HOST }}
JIRA_USER: ${{ secrets.JIRA_USER }}
JIRA_PASSWORD: ${{ secrets.JIRA_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BUGZILLA_API_KEY: ${{ secrets.BUGZILLA_API_KEY }}
BITRISE_HOST: ${{ secrets.BITRISE_HOST }}
Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/staging-weekly-desktop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@ jobs:
echo "ATLASSIAN_HOST=${{ secrets.ATLASSIAN_HOST }}" >> $GITHUB_ENV
echo "ATLASSIAN_USERNAME=${{ secrets.ATLASSIAN_USERNAME }}" >> $GITHUB_ENV
echo "BUGZILLA_API_KEY=${{ secrets.BUGZILLA_API_KEY }}" >> $GITHUB_ENV
echo "JIRA_HOST=${{ secrets.JIRA_HOST }}" >> $GITHUB_ENV
echo "JIRA_USER=${{ secrets.JIRA_USER }}" >> $GITHUB_ENV
echo "JIRA_PASSWORD=${{ secrets.JIRA_PASSWORD }}" >> $GITHUB_ENV
- run: python ./__main__.py ${{ matrix.args }}
continue-on-error: true

Expand Down
3 changes: 0 additions & 3 deletions .github/workflows/staging-weekly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,6 @@ env:
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}
ATLASSIAN_HOST: ${{ secrets.ATLASSIAN_HOST }}
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
JIRA_HOST: ${{ secrets.JIRA_HOST }}
JIRA_USER: ${{ secrets.JIRA_USER }}
JIRA_PASSWORD: ${{ secrets.JIRA_PASSWORD }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BUGZILLA_API_KEY: ${{ secrets.BUGZILLA_API_KEY }}
BITRISE_HOST: ${{ secrets.BITRISE_HOST }}
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/unit-tests-daily.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Unit Tests - Daily

# Daily @9am UTC + manual trigger
on:
schedule:
- cron: "0 9 * * *"
workflow_dispatch:

env:
ATLASSIAN_USERNAME: ${{ secrets.ATLASSIAN_USERNAME }}
ATLASSIAN_API_TOKEN: ${{ secrets.ATLASSIAN_API_TOKEN }}

jobs:
unit-tests:
runs-on: ubuntu-latest
steps:
- name: Check out source repository
uses: actions/checkout@v6

- name: Set up Python environment
uses: actions/setup-python@v6
with:
python-version: "3.11"

- name: Install dependencies
run: pip install -r requirements.txt

- name: Run unit tests
run: python -m unittest discover -s tests -v

- name: Set job log URL
if: always()
run: echo "JOB_LOG_URL=https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" >> $GITHUB_ENV

- name: Send workflow status to Slack
if: always()
uses: slackapi/slack-github-action@v3.0.1
env:
WORKFLOW_NAME: ${{ github.workflow }}
BRANCH: ${{ github.head_ref || github.ref_name }}
JOB_STATUS: ${{ job.status == 'success' && ':white_check_mark:' || ':x:' }}
JOB_STATUS_COLOR: ${{ job.status == 'success' && '#36a64f' || '#FF0000' }}
with:
webhook: ${{ secrets.SLACK_WEBHOOK_URL_MOBILE_ALERTS_TOOLING }}
webhook-type: webhook-trigger
payload-templated: true
payload-file-path: "./config/payload-slack-content.json"
8 changes: 3 additions & 5 deletions api/jira/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
FILTER_ID_ALL_REQUEST_ISSUE_TYPE,
FILTER_ID_QA_NEEDED_iOS,
FIREFOX_RELEASE_TRAIN,
HOST_JIRA,
MAX_RESULT,
QATT_BOARD,
QATT_PARENT_TICKETS_IN_BOARD,
Expand All @@ -33,11 +32,10 @@ class Jira:

def __init__(self):
try:
# _url_host = os.environ['JIRA_HOST']
_url_host = f"https://{HOST_JIRA}/rest/api/3"
_url_host = f"https://{os.environ['ATLASSIAN_HOST']}/rest/api/3"
self.client = JiraAPIClient(_url_host)
self.client.user = os.environ['JIRA_USER']
self.client.password = os.environ['JIRA_PASSWORD']
self.client.user = os.environ['ATLASSIAN_USERNAME']
self.client.password = os.environ['ATLASSIAN_API_TOKEN']
except KeyError:
print("ERROR: Missing jira env var")
sys.exit(1)
Expand Down
12 changes: 8 additions & 4 deletions api/jira/report_qa_requests.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,10 @@ def jira_qa_requests():
df = prepare_jira_df(payload)

if df.empty:
logger.warning("Jira filtersreturned empty payload; no DB delete/insert.")
return
raise ValueError(
"jira_qa_requests returned empty payload — "
"check Jira credentials or filter. Database was not modified."
)

jira_delete(ReportJiraQARequests)

Expand Down Expand Up @@ -92,8 +94,10 @@ def jira_qa_requests_workload():
df = prepare_jira_df(payload)

if df.empty:
logger.warning("Empty payload; skipping DB delete/insert.")
return
raise ValueError(
"jira_qa_requests_workload returned empty payload — "
"check Jira credentials or filter. Database was not modified."
)

jira_delete(ReportJIraQARequestsNewIssueType)

Expand Down
6 changes: 4 additions & 2 deletions api/jira/report_qa_requests_desktop.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,10 @@ def jira_qa_requests_desktop():
df = prepare_jira_df(payload)

if df.empty:
logger.warning("Jira filtersreturned empty payload; no DB delete/insert.")
return
raise ValueError(
"jira_qa_requests_desktop returned empty payload — "
"check Jira credentials or filter. Database was not modified."
)

jira_delete(ReportJiraQARequestsDesktop)

Expand Down
12 changes: 12 additions & 0 deletions api/jira/report_worklogs.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,12 @@ def jira_worklogs():
worklog_data = []
issues = jira.filter_sv_parent_in_board()

if not issues:
raise ValueError(
"No issues returned from QATT board — "
"check Jira credentials or filter. Database was not modified."
)

for issue in issues:
parent_key = (issue.get("fields", {}).get("parent") or {}).get("key", issue.get("key")) # noqa
parent_name = issue.get("fields", {}).get("summary", "Unknown")
Expand Down Expand Up @@ -139,6 +145,12 @@ def jira_worklogs():
# FIX: Replace NaN values with None for MySQL compatibility
df = df.astype(object).where(df.notna(), None)

if df.empty:
raise ValueError(
"Issues were fetched but no worklog data found — "
"Database was not modified."
)

jira_delete(ReportJiraSoftvisionWorklogs)
report_jira_worklogs_insert(df)

Expand Down
3 changes: 0 additions & 3 deletions constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,9 +65,6 @@
"sentry-rates",
]

# Jira Host
HOST_JIRA = "mozilla-hub.atlassian.net"

# JQL query options
SEARCH = "search/jql"
ISSUES = "issues"
Expand Down
Loading
Loading