-
Notifications
You must be signed in to change notification settings - Fork 26
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
Replace Jenkins CI/CD with GitHub Actions CI/CD #93
Comments
Nice Github Actions are cool :) |
It is... Need a React app? GitHub Actions have you covered! 😁 https://github.com/mkdevops-se/web-template-react |
From [GitHub Packages](https://docs.github.com/en/packages/quickstart), initial iteration towards smithmicro#93.
From [GitHub Packages](https://docs.github.com/en/packages/quickstart), initial iteration towards smithmicro#93.
From [GitHub Packages](https://docs.github.com/en/packages/quickstart), initial iteration towards smithmicro#93. Additionally: - Up-to-date `.github/` assets for repo - `.github/PULL_REQUEST_TEMPLATE` stolen from https://github.com/cortinico/kotlin-android-template/blob/main/.github/PULL_REQUEST_TEMPLATE - `.github/ISSUE_TEMPLATE/feature_request.md` stolen from https://github.com/cortinico/kotlin-android-template/blob/main/.github/ISSUE_TEMPLATE/feature_request.md - `.github/ISSUE_TEMPLATE/bug_report.md` stolen from https://github.com/cortinico/kotlin-android-template/blob/main/.github/ISSUE_TEMPLATE/bug_report.md - `.github/CODEOWNERS` file with repo creator - Remove `Jenkinsfile` and `.travis.yml` CI/CD configs
Additionally: - Auto-commit pre-release `package.json` updates in "Publish Pre-Release" workflow - Comment-out time-consuming install/build/lint steps for faster iterations - Add `contents:write` permission for `publish-prerelease` GHA - Add `npm run docs` to GitHub Actions CI/CD - Try `Co-authored-by: <actor>` for GitHub Actions commit, https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line
- Fetch all tags and history on release - Moar badge 🏷️ and prettier names 📝
- Add Browserify from old `Jenkinsfile` CI/CD 🤖 - Publish publicly per https://docs.npmjs.com/creating-and-publishing-scoped-public-packages
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master`
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
- `github.com/mblomdahl` fork -> `github.com/smithmicro` upstream - `issue-93-gh-actions` feature branch -> default branch `master` - Only run "Publish Release" and "Publish Pre-Release" workflows on main repo
Upon reading further on how to implement this, imagine my surprise when reviewing my favorite Atlassian document covering Gitflow Workflow. In their latest version they start off with the following ingress:
So, if not even Atlassian got my back on this topic, it's time to abandon the Gitflow Workflow idea. I will delete the
(Ping to old maintainers @carlba & @akebrissman, FYI!) |
- `github.com/smithmicro` upstream -> `github.com/mblomdahl` fork - default branch `master` -> `issue-93-gh-actions` feature branch - Only run "Publish Release" and "Publish Pre-Release" workflows on fork repo
- Use `persist-credentials: false`, "... otherwise, the token used is the GITHUB_TOKEN, instead of your personal access token" (from https://github.com/ad-m/github-push-action#readme) - Always fetch latest `default` branch before publishing pre-release
- Add debug step for event properties - Only publish pre-release on main repo, pull request builds should not trigger publishing
After merging smithmicro#94, we find that GitHub Packages \[GHP\], does not accept publishing of un-scoped packages. Instead of giving up on GHP entirely, let's publish this under two different names: 1. On NPM, as always, it's the `mapbox-gl-circle` package 2. On GHP, it's the same code as on NPM but published as the "`@smithmicro/mapbox-gl-circle`" package
After merging smithmicro#94, we find that GitHub Packages \[GHP\], does not accept publishing of un-scoped packages. Instead of giving up on GHP entirely, let's publish this under two different names: 1. On NPM, as always, it's the `mapbox-gl-circle` package 2. On GHP, it's the same code as on NPM but published as the "`@smithmicro/mapbox-gl-circle`" package
After merging #94, we find that GitHub Packages \[GHP\], does not accept publishing of un-scoped packages. Instead of giving up on GHP entirely, let's publish this under two different names: 1. On NPM, as always, it's the `mapbox-gl-circle` package 2. On GHP, it's the same code as on NPM but published as the "`@smithmicro/mapbox-gl-circle`" package
Initially brought up during review of PR #86, the current CI/CD via Jenkins is broken and needs a replacement to continue structured and robust maintenance of this repository.
Draft acceptance criterion:
Document how to add the necessary NPM credentials to the repo, replacing the currentNPM_TOKEN = credentials('mblomdahl_npm')
secret in Jenkinsfile L#131Evaluate and propose alternative to the current code for generating unique build identifiers, Jenkinsfile L#11-L#67Building from therelease/x.y.z
branch should push a release candidate to NPMmaster
branch should push a release to NPMPing @gleite-smsi FYI!
The text was updated successfully, but these errors were encountered: