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
GitHub Actions workflow to publish releases #16
Conversation
I could merge this but I don't know who owns the current app in the jetbrain market. |
Please ping on this PR again if none of the application owner is responding and we need to look into a different way to publish it on jetbrains. |
I would like to help with this. However, currently I cannot figure out how to login in my jetbrains account. There seems to be something wrong. Whenever I login with my personal account (used to upload nix-idea), I am logged in with my professional account. I hope I can figure this out later. |
@pSub should we write to plugins-admin@jetbrains.com about this? https://plugins.jetbrains.com/docs/marketplace/ |
Sorry for the delay, I was ill. I've contacted the support and the access to the plugin has been restored for me. I've also create a permanent token. However, I cannot see the settings section for this repository to add the secret. @Mic92 Are you able to see the settings section? |
@pSub I cannot either right now. I pinged some folks on IRC to give you more rights. |
done, you are now both admins |
@zimbatm Thank you! @Mic92 @JojOatXGME I've added a permanent token as a secret (called |
@Mic92 If you want to publish a new release, you can either push tag |
I triggered a test run here: https://github.com/NixOS/nix-idea/runs/1346448422?check_suite_focus=true |
Looks like the tooling still needs some fixes |
Mhh... Task Any idea how I can test the task without actually uploading the plugin? Or do you think it is fine to publish the plugin under a different name just to test the publication system? I can reproduce the exception in |
@JojOatXGME I think it should be fine to debug publishing under a different name. Maybe make it clear from the description that this is not the official nix plugin and only for testing deployment. |
You may also find this useful for testing: https://github.com/marketplace/actions/debugging-with-tmate |
@Mic92 I cannot reproduce the issue. My run succeeded and I only made a few changes which I would not expect to fix the issue. Maybe it was a temporary failure of the network or JetBrains Marketplace? In such case, you can either
In addition to adding the I guess it is also possible to build and save the binary in one workflow, and publish the build results in separate workflows. Anyway, I expect that such process would be more comlicated and I wanted to keep it simple at first. However, if you have any suggestions or references on how to address such problems, I'm happy to read them. |
This is the restart: https://github.com/NixOS/nix-idea/runs/1360104046?check_suite_focus=true |
This build failed because the GitHub release already exists. Unfortunatly, the create-release action dosen't have an option to continue if the release does already exist. (EDIT: This is way you would need to delete the GitHub release for this to work. See my last comment.)
This build failed because you did not change the version number. Therefore, the version number did not match the tag. You should run the Beside that: My offer to split both steps into two seperate actions is still valid. |
I get the same error again: https://github.com/NixOS/nix-idea/runs/1360166286?check_suite_focus=true#step:12:33 |
I cannot read the jetbrains secret so I cannot upload manually. |
Ok. That is strange. I will create a new pull request which adds the I'm not sure if you want to keep the tags |
Maybe #17 fixes the problem. From what I understand in https://youtrack.jetbrains.com/issue/IDEA-234557 it should. |
@pSub As far as I understand it, it should fix the exception in I created pull request #18 to add the |
I also cannot delete tags/releases btw. |
With my changes from #19, you can trigger the publication without creating a new release. You could then try to publish the plugin again. Since we added the |
I created a GitHub Actions workflow to publish new releases. It can be triggered manually or by pushing a tag. You can look at a few builds here:
The generated release looks like this: Generated release on GitHub
I haven't tested the publication to the JetBrains Marketplace. I wasn't sure if it is OK to release a new version under another name just to test the publication process. It should work after adding a permanent token as secret
JETBRAINS_TOKEN
to the GitHub repository.Note that after releasing a new version, the workflow does not (yet) bump the version number or update the
CHANGELOG.md
. If you want such feature, we can talk about it. There might be some pitfalls because other persons can push to the repository while the job is running.