Private Github Repo & Github Maven Packages support #2391
Labels
feature: creator
status: accepted
This is a high-priority feature or a reproduced bug
type: enhancement
Minecraft Development for IntelliJ plugin version
2024.2-1.8.2
Description of the feature request
Custom templates are very useful, but they come with the drawback that everything needs to be accessible via a public link. For teams working on larger servers, this isn’t an ideal solution. To address this, I propose two enhancements:
maven.pkg.github.com/.../maven-metadata.xml
linksPrivate Repositories
A new
GitHub
option would appear in the template repositories dropdown menu, allowing you to select it as an additional provider. This selection would require authentication with your GitHub account, either through a web pop-up or by entering a token. From there, you could paste a direct link to a zip file or folder hosted in the repository. Additionally, there would be an option to enable automatic updates, similar to how it works with the remote provider.Private GitHub Packages Versions
If you're unfamiliar with GitHub Packages, learn more here. Since MavenArtifactVersionCreatorProperty.kt is available, it could be used to select the latest version automatically, eliminating the need for constant template updates.
The challenge is that when using GitHub Packages within an organization, the
maven-metadata.xml
file isn’t publicly accessible. Attempting to use a URL likehttps://maven.pkg.github.com/OWNER/REPOSITORY/org/example/project/maven-metadata.xml
will fail to load...This happens because the site requires you to log in with your
Username
andToken
:To make private packages work, you need to authenticate with a token in
.m2/settings.xml
. What ifMinecraft Development for IntelliJ
could utilize this authentication data? When it detects a GitHub Maven repository link, it could automatically attempt to authenticate using the credentials stored insettings.xml
, allowing for fully private developement within an organization.The text was updated successfully, but these errors were encountered: