cisagov / cisagov/skeleton-aws-lambda-python

Create automated prerelease/release functionality

未關閉
#8 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
github-actions improvement
主要語言
Shell
星號
6
分支
2
PR 合併指標
30 天內沒有已合併 PR

描述

# 💡 Summary #

Add appropriate GitHub Actions workflow functionality to automatically generate a prerelease/release when a corresponding tag is pushed.

## Motivation and context ##

This would automate what is otherwise the tedious job of downloading Actions artifacts, creating a release manually, and uploading the aforementioned artifacts to that release (again manually). It would allow the appropriate GitHub Actions functionality to kick off when a matching tag is pushed to the repository.

## Implementation notes ##

We can leverage the existing [actions/upload-artifact] and [actions/download-artifact] actions to handle generating and sharing the individual Python version artifacts. We can then use something like [softprops/action-gh-release] in conjunction with the [GitHub automated release notes configuration](https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes) functionality to create an initial release with artifacts attached. The person creating the tag (and thus the prerelease/release) could then simply check the release and make any necessary edits to the release notes if necessary.

## Acceptance criteria ##

- [ ] When a tag is pushed an appropriate prerelease or release is generated

[actions/upload-artifact]: https://github.com/actions/upload-artifact
[actions/download-artifact]:https://github.com/actions/download-artifact
[softprops/action-gh-release]: https://github.com/softprops/action-gh-release

貢獻指南

開啟貢獻指南

研究方向

首先檢查儲存庫中現有的 GitHub Actions 工作流程,以及針對每個 Python 版本產生的 artifact 名稱。檢視 upload-artifact 和 download-artifact action,接著判斷相符的已推送 tag 應如何區分 prerelease 與 release,以及應如何產生 release notes。完成的標準是:推送相符的 tag 會建立適當的 GitHub release,並附加預期的 artifact。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
github-actions, python, shell
領域
ci-cd, devops, release
Issue 類型
功能
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。