Publier Votre Plugin

Le dépôt officiel de plugins et mods de Sponge, Ore, est un projet libre et ouvert à n’importe qui qui souhaite public son plugin Sponge ou sont mod Forge.

Préparation de votre Plugin

Ore requires any projects to be packaged with a mcmod.info descriptor file in the top-level of your JAR file. This file is used to automatically infer some important details about your project to make the upload process easier. Ore will reject your plugin if this file is missing from the JAR. Luckily, SpongeAPI has a built-in annotation processor that creates this file for you automatically, on compile, using the @Plugin annotation that you have likely already created in your plugin’s main class.

Note

Pour plus d’informations pour la création et la compilation de votre premier plugin, voir : Classe Principale du Plugin.

Pour référence, voici un exemple de fichier mcmod.info.

[
    {
        "modid": "my-plugin",
        "name": "MyPlugin",
        "version": "1.0.0",
        "description": "My first plugin!",
        "url": "https://spongepowered.org",
        "authorList": [
            "windy",
            "Zidane",
            "gabizou"
        ],
        "requiredMods": [
            "bookotd@1.0.0",
            "ore-test@1.0.0",
            "worldedit@1.0.0"
        ],
        "dependencies": [
            "bookotd@1.0.0",
            "ore-test@1.0.0",
            "worldedit@1.0.0"
        ]
    }
]

Au minimum, chaque projet Ore doit avoir les champs modid, name et version de complétés !

Signer votre Plugin

Pour des raisons de sécurité, Ore exige que chaque fichier de plugin (ZIP ou JAR) soit envoyé avec une signature détachée Pretty Good Privacy (PGP) <https://en.wikipedia.org/wiki/Pretty_Good_Privacy>`__ pour une clé publique qui est associée avec l’email avec lequel vous vous êtes inscrit sur Sponge. La signature digitale garantit que tous les fichiers envoyés par un utilisateur soient bien envoyés par le titulaire du compte.

Note

Une signature numérique certifie et horodate un document. Si le document est modifié par la suite de quelque façon, une vérification de la signature échouera. Une signature digitale peut avoir le même but qu’une signature manuscrite avec l’avantage d’être inviolable La distribution de source GnuPG, par exemple, est signée afin que les utilisateurs puissent vérifier que le code source n’a pas été modifié depuis qu’il a été emballé.

Afin de signer votre plugin, vous devez tout d’abord télécharger un logiciel compatible avec PGP, comme GnuPG (GPG).. GPG est disponible pour toutes les plateformes majeures et les fichiers binaires peuvent être téléchargés ici.

Une fois que vous avez installé GPG et que vous avez généré votre première clé publique, vous aurez besoin d’ajouter la clé à votre compte. Pour faire ceci, vous pouvez accéder à votre profil et cliquer sur le symbole de la clé à côté de votre avatar.

PGP public key 1

You will then be prompted to enter your key into a text box. You must be sure to enter the key in its entirety or signature validation will fail.

PGP public key 2

Finalement, vous devez signer votre plugin avec votre clé privée de la clé publique que vous avez envoyé. Vous devez seulement signer le fichier que vous envoyez : par exemple, si vous envoyez un fichier ZIP avec le JAR de votre plugin inclus, seulement le ZIP a besoin d’être (et doit être) signé. La façon la plus simple de signer le fichier que vous souhaitez envoyé est avec la commande GPG suivante.

gpg --output myplugin-1.0.0.jar.sig --detach-sig myplugin-1.0.0.jar

Note

If you’re using a build manager such as Gradle or Maven, there are plugins you can apply to your build script that can sign built artifacts and automate this laborious process for you. For more information, please refer to Gradle’s documentation or Maven’s documentation.

Mettre en Ligne votre Plugin

Une fois que le fichier JAR de votre plugin est emballé avec un fichier descripteur mcmod.info au niveau supérieur et qu’il est signé avec votre clé privée PGP, votre plugin est prêt pour la mise en ligne ! Pour créer un projet sur Ore, vous devez avoir un compte Sponge actif. Cliquer sur le bouton « Sign up » dans le coin en haut à droite vous mènera sur la page appropriée pour en créer un. Si vous possédez déjà un compte, appuyez juste sur le bouton « Log in » en haut à droite pour vous connecter à Ore.

Une fois connecté, naviguer à votre avatar et sélectionner l’option « New » dans le menu déroulant qui apparaît, ou appuyez juste sur la touche « C ».

Lors de la mise en ligne, l’assistant de création vous demandera tout d’abord votre fichier principal, puis votre signature détachée.

Configurer Votre Projet

Après avoir mis en ligne votre plugin, vous aurez quelques paramètres pour configurer votre projet comme vous le souhaitez. Ne vous inquiétez pas, tout ceci pourra être changé plus tard dans le panneau de paramètres. Après avoir configuré votre projet vous serez en mesure d’inviter des utilisateurs de Sponge à faire partie de votre projet. Tout utilisateur qui est inscrit sur les forums peut être invité à un projet même si ils ne ce sont jamais connectés à Ore. Lors de la création de votre projet, les utilisateurs que vous avez invités recevront une notification et pourront soit accepter, soit décliner votre invitation. Les membres du projet ne seront pas visibles au public jusqu’à que l’invitation ait été acceptée.

Il y a actuellement trois rangs que vous pouvez assigner aux membres du projet : Développeur, Editeur et Support. L’utilisateur qui a créé le projet est désigné comme Propriétaire ce qui lui confère un accès intégrale au projet. Voici un rapide aperçu de ce que chaque rang peut faire au sein de votre projet.

Propriétaire

Il y a un maximum d’un propriétaire par projet, ce rang est non transférable pour le moment. C’est le seul rang capable d’assigner des rangs aux autres membres.

Développeurs

Les développeurs peuvent créer/éditer des release channels, des pages et créer/éditer les versions.

Éditeur

Les Editeurs peuvent éditer les pages du projet.

Soutien

Les Soutiens ne peuvent rien faire, ce rang sert à montrer la participation au projet du membre.

Documenter votre projet avec les Pages

To document your plugin Ore offers the creation of pages. By default, you get a “Home” page when you create your new Project. To add new pages, you can click on the “+” icon in the Pages bar on the right of the screen; doing so will open a pop-up where you can choose a name and the parent page (adding a page on the Home page is not possible). If you choose the “<None>” option the page will become a root page where you can later add child pages on. If you choose to add it to another page the page will only show when the parent page is expanded. To document your pages, you can use CommonMark.

Lier des pages

Si vous avez une structure de pages semblable à la suivante:

  • Home
  • Commandes
    • Utilisateur
    • Admin
  • Réglages
    • Config
    • Permissions

Et que vous voulez ajouter un lien de la pahe Home à la page Config dans la section Setup, vous pouvez utiliser des WikiLinks. Pour ajouter un WikiLink utilisez [[Link]] dans la page Home de cette manière: [[Setup/Config]] et cela sera convertit en un lien garantit de fonctionner.

Note

Vous pouvez aussi spécifier un titre dans le lien en le séparant avec un Pipe: [[Title|Link]] deviendra un lien avec un titre

Note

Les WikiLinks ne sont supportés que sur Ore, donc si vous les utilisez sur la page Home, ils ne seront pas affichés correctement sur les forums. Cependant, nous vous recommandons d’utiliser les WikiLinks à la place de liens normaux pour garantir le fonctionnement futur de votre wiki.

États du projet

When creating a new project, a banner will appear telling you your project is in a “new” state. The new state is intended to indicated to users and admins you are still working on the setup of your project. If you have finished documenting your plugin to make it comply with the guidelines, click the “publish” button to complete the process. However, if you don’t publish it yourself then the project will be published automatically 24 hours after its creation.

Besoin de changements

L’équipe d’Ore peut cacher votre projet et demander des changements; les changements en question seront listés dans la bannière. Cet état cachera votre projet du public; quand vous aurez fini d’appliquer ces modifications, vous pourrez envoyer votre projet en attente d’approbation.

Besoin d’approbation

In this state your project is still hidden from the public while waiting for a staff member to review and validate the changes that were requested. Please be patient, the staff members might be busy with other tasks. If the project gets approved it will automatically become visible again. Please make sure to actually fix the points that require changes.