grind_publish 1.0.0 grind_publish: ^1.0.0 copied to clipboard
A library to automatically publish a package when its version increases.
grind_publish #
This package automatically publishes your library when the pubspec.yaml
version has been increased and merged into master.
NOTE: We strongly recommend to add a comment to the
pubspec.yaml
file to note that this package auto publishes if the version is increased. E.g.:# Increasing this version will automatically # publish to pub when merged into master version: 0.0.2
Usage #
1. Setup the grind task like this: #
@Task('Automatically publishes this package if the pubspec version increases')
autoPublish() async {
final credentials = grind_publish.Credentials.fromEnvironment();
await grind_publish.autoPublish('your-package-name', credentials);
}
2. Set the environmental variables in your CI runner #
By default the env vars are named: ACCESS_TOKEN
, REFRESH_TOKEN
, EXPIRATION
,
TOKEN_ENDPOINT
(optional), SCOPES
(optional).
You find the values on your local machine in ~/.pub-cache/credentials.json
after you once ran pub publish
.
On GitLab, setting these variables is in Settings → CI / CD → Variables.
3. Run the script in your CI pipeline #
This really depends on where you are running this. For GitLab example, simply look
at this .gitlab-ci.yml
.
License #
MIT