Option to ignore locks, for secondary operations against environments
- Dominant language
- TypeScript
- Stars
- 576
- Forks
- 74
- Avg merge
- 11h 7m
- Merged PRs (30d)
- 1
Description
### Details
Thanks for the awesome action. npm already uses branch-deploy for deploying code changes and schema migrations.
We're looking at using branch-deploy to trigger data transitions (backfills) as well, which may need to run for days. We typically run `.lock --global` ahead of deploying code changes, but that blocks all executions of `github/branch-deploy`, regardless of `trigger`. I'm wondering if there's a way we can have code changes and transitions deploying independently.
Is there a way our transition workflow could ignore the global lock? Or could there be multiple types of locks, such that there's a global deployment lock, but also a global transition lock?
```yaml
- name: branch-deploy
uses: github/branch-deploy@10.0.0
with:
trigger: .transition
lock_type: transition
```
🤔 I see there's also a [`github/command` action](https://github.com/github/command) which likely ignores locks, but we'll need some way of referring to an environment.
Contributor guide
Research direction
Start with the branch-deploy action's handling of the global lock, trigger values, and environment references; compare that with the mentioned github/command action. Determine whether the requested workflow should ignore the global lock or support separate lock types, then verify the chosen behavior through the action's existing workflow configuration and documentation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, typescript
- Domain
- ci-cd, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100