Releasing process depends on the already described workflows - when your main branch receives a new Pull Request
or a regular push, [Build](.github/workflows/build.yml) workflow tests your plugin at different angles and prepares
a draft release.
![Release draft][file:draft-release.png]
Draft release is a working copy of a release, which you can review, before publishing. It has predefined title
and git tag name, which is the current plugin's version - i.e. `v0.0.1`. Changelog is provided automatically using
the [gradle-changelog-plugin][gh:gradle-changelog-plugin]. There is also an artifact file with built plugin attached.
Every next *Build* overrides (or creates one if absent) such a draft to keep your *Releases* page clean.
By editing the draft and using the <kbd>Publish release</kbd> button, GitHub will tag your repository with the given
version and add new entry to the Releases tab. In the next steps, it will notify users that are *watching* repository
and trigger the final [Release](.github/workflows/release.yml) workflow.
### Publishing Plugin
Cannot find org.jetbrains.plugins.template. Note that you need to upload the plugin to the repository at least once manually (to specify options like the license, repository URL etc.). Follow the instructions: https://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/publishing_plugin.html
Releasing plugin to the Marketplace is a straightforward operation which uses `publishPlugin` Gradle task provided
by the [gradle-intellij-plugin][gh:gradle-intellij-plugin]. [Release](.github/workflows/release.yml) workflow automates
that process by running the task, when a new release appears in the GitHub Releases section.
Authorization process relies on the `PUBLISH_TOKEN` secret environment variable, which has to be provided
in the repository Settings in the Secrets section.
![Settings > Secrets][file:settings-secrets.png]
You can find out how to get that token in the [Providing Your Hub Permanent Token to Gradle][docs:token] article.
> **Important:**
> Before using the automated deployment process, it is required to manually create a new plugin in the Marketplace
to specify options like the license, repository URL etc. Follow the [Publishing a Plugin][docs:publishing] instructions.
## Useful Links
@ -250,11 +276,14 @@ Cannot find org.jetbrains.plugins.template. Note that you need to upload the plu