-
Notifications
You must be signed in to change notification settings - Fork 407
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
Maintenance: Monthly reminder to update roadmap #4074
Comments
|
Reopening as there's some fixes to port from another branch, and to share lessons learned in this. |
Main lesson learned is that when using cross-repo workflows that use local scripts, we must change the What do I mean by that? Take the following job in mind jobs:
call-workflow-passing-data:
permissions:
contents: read
pull-requests: read
issues: write # create monthly roadmap report
uses: aws-powertools/actions/.github/workflows/monthly_roadmap_reminder.yml@main
secrets:
token: ${{ secrets.GITHUB_TOKEN }} There are two implicit designs that aren't easy to understand at first and docs don't call that out:
With that in mind, the target workflow naturally would try to do a code checkout as its first step. However, that code checkout will checkout this repository (Python source code), not the shared actions we want. For this to work, the target workflow owned by jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@9bb56186c3b09b4f86b1c65136769dd318469633 # v4.1.2
with:
# NOTE Since it's called from another repository
# we must checkout the repository where the github-script is (aws-powertools/actions)
# otherwise the caller check out their own repository code (e.g., Python/TS), where the github-scripts aren't available
repository: aws-powertools/actions A nicer benefit of this is that we don't need to control from the target who can call it and try to abuse creating GitHub issues in another place, because it's the caller repository that runs the workflow (it's not a fire-n-forget). |
This is now released under 2.37.0 version! |
This is now released under 2.38.0 version! |
Why is this needed?
As part of governance to keep public roadmap up to date.
Which area does this relate to?
Other
Solution
No response
Acknowledgment
The text was updated successfully, but these errors were encountered: