-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Automate Asana paperwork for public releases #2287
Conversation
… and add the task as part of publish_dmg_release
handle_public_release() { | ||
local incidents_parent_task_id="${INCIDENTS_PARENT_TASK_ID:-${default_incidents_parent_task_id}}" | ||
local current_objectives_project_id="${CURRENT_OBJECTIVES_PROJECT_ID:-${default_current_objectives_project_id}}" | ||
|
||
# 1. Get the existing Asana tag for the release. | ||
local tag_id | ||
tag_id=$(find_asana_release_tag "$marketing_version") | ||
|
||
# 2. Fetch task IDs for the release tag. | ||
local task_ids | ||
read -ra task_ids <<< "$(fetch_tagged_tasks_ids "$tag_id")" | ||
|
||
# 3. Move all tasks to Done section. | ||
move_tasks_to_section "$target_section_id" "${task_ids[@]}" | ||
|
||
# 4. Complete tasks that don't require a post-mortem. | ||
complete_tasks "${task_ids[@]}" | ||
|
||
# 5. Fetch current release notes from Asana release task. | ||
local release_notes=() | ||
while read -r line; do | ||
release_notes+=("$line") | ||
done <<< "$(fetch_current_release_notes "${release_task_id}")" | ||
|
||
# 6. Construct release announcement task description | ||
local html_notes | ||
html_notes="$(construct_release_announcement_task_description)" | ||
cat > "${announcement_task_contents_file}" <<< "${html_notes}" | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is the main thing being added in this PR
echo "${task_ids[@]}" | ||
} | ||
|
||
fetch_incident_task_ids() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Neat 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Okay, I think it's good. I went through the changes a few times to follow what was going on, with my somewhat limited Bash knowledge anyway, and checked that the testing steps were all good. Nothing wrong that I can see, nice work! 🚢
Task/Issue URL: https://app.asana.com/0/0/1206628689034177/f Description: This change updates publish_dmg_release workflow so that it moves release-related tasks to Done column in macOS App Board, closes them (all but the release task, incident tasks and Current Objectives projects), run Create DMG Variants pipeline and instructs the release DRI to announce the release to the company.
Task/Issue URL: https://app.asana.com/0/0/1206628689034177/f
CC: @loremattei
Description:
This change updates publish_dmg_release workflow so that it moves release-related tasks to Done column
in macOS App Board, closes them (all but the release task, incident tasks and Current Objectives projects),
run Create DMG Variants pipeline and instructs the release DRI to announce the release to the company.
Steps to test this PR:
Verify the following items:
Internal references:
Pull Request Review Checklist
Software Engineering Expectations
Technical Design Template
Pull Request Documentation