Skip to content

Improved How To Release md #157

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

Merged
merged 1 commit into from
Nov 29, 2019
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 38 additions & 24 deletions how-to-release.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,46 @@
Release should be done manually & carefully.
## Release should be done manually & carefully.

Be sure to check that plugin works before releasing!
To be executed straight on neueda/jetbrains-plugin-graph-database-support repository master branch.
Be sure to check that plugin works before releasing!

# Release from Travis

1) Push new release tag to Github
./gradlew release
2) Credentials are [stored in Travis](https://travis-ci.org/neueda/jetbrains-plugin-graph-database-support/settings#ember7449)
3) Plugin will be automatically deployed to Jetbrains Plugin Registry when new tag is pushed (see `deploy` in [.travis.yml](.travis.yml))
<sub>Commands to be executed straight from the root directory of [neueda/jetbrains-plugin-graph-database-support](https://github.com/neueda/jetbrains-plugin-graph-database-support)
repository, on the master branch.</sub>

# Release from workstation
# So, how?

Commands:
1. Execute this command: `./gradlew release`
2. When prompted, enter the code of version to be currently released (eg. `2.1.5`)
3. Shortly after, when prompted again, enter the next version code (eg. `2.1.6`)
4. Update release description on [GitHub](https://github.com/neueda/jetbrains-plugin-graph-database-support/releases)
5. Cheer and celebrate!

1) Push new release tag to github
./gradlew release
**That's it!**

2) Checkout new release tag locally
git checkout <new-release-tag>
Please note that:
- **Travis.org** is used for publishing
- Plugin is automatically deployed to Jetbrains Plugin Registry when new tag is pushed (see `deploy` in [.travis.yml](.travis.yml))
- The next version code will be added to gradle.properties
- So you can start working on the next version right away
- `[skip ci]` git commit message prefix tells Travis not to execute a build (because unnecessary)
- JetBrains credentials are [stored in Travis](https://travis-ci.org/neueda/jetbrains-plugin-graph-database-support/settings#ember7449)
- Currently, only INTELLIJ_TOKEN environment variable is needed for publishing

3) Clean everything
./gradlew clean
## Secondary option: manual release
Just for reference. Travis is not used in this case

4) Publish plugin to Jetbrains Plugin Registry
Ensure {HOME}/.gradle/gradle.properties file contains intellij credentials
intellijUsername=
intellijPassword=
Execute
./gradlew buildPlugin
./gradlew :graph-database-support-plugin:publishPlugin
1. Push new release tag to GitHub (Travis must be disabled)
`./gradlew release`

2. Checkout new release tag locally
`git checkout <new-release-tag>`

3. Clean everything
`./gradlew clean`

4. Publish plugin to Jetbrains Plugin Registry
4.1. Ensure `{HOME}/.gradle/gradle.properties` file contains valid intellij credentials:
`intellijUsername=xxxx`
`intellijPassword=xxxx`
4.2. Build the plugin:
`./gradlew buildPlugin`
4.3. Publish the plugin:
`./gradlew :graph-database-support-plugin:publishPlugin`