BartMassey / BartMassey/github-actions-for-ci
A workflow for the entire team
- Dominant language
- JavaScript
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
# Custom workflow
Now that we've learned how to quickly set up CI, let's try a more realistic use case.
Our fictional team has a custom workflow that goes beyond the template we've used so far. We would like the following features:

**Test against multiple targets** so that we know if our supported operating systems and Node.js versions are working

**Dedicated test job** so that we can separate out build from test details

**Access to build artifacts** so that we can deploy them to a target environment

**Branch protections** so that the `master` branch can't be deleted or inadvertently broken

**Required reviews** so that any pull requests are double checked by teammates

**Obvious approvals** so we can merge quickly and potentially automate merges and deployments
## Step 7: Create a custom GitHub Actions workflow
Can GitHub Actions support this workflow? Let's find out. We'll tackle some of the changes to the existing workflow file first.
### :keyboard: Activity: Edit the existing workflow with new build targets
1. Edit your [existing workflow](https://github.com/BartMassey/github-actions-for-ci/edit/master/.github/workflows/node.js.yml) file in a new branch
2. In that file, target versions `12.x` and `14.x` of Node, only
3. Open a new pull request titled **Improve CI** for your change.
I'll respond when you open the pull request.
Contributor guide
No contributing guide indexed for this repository
Research direction
Open the existing workflow at .github/workflows/node.js.yml and review how its current build targets are configured. Update the workflow to target only Node.js versions 12.x and 14.x, then open a pull request titled “Improve CI” to confirm the requested workflow change is complete.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, javascript, node.js
- Domain
- ci-cd, devops
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 65/100