MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    ForgeChangelogGradlePlugin : créer un changelog pour forge via gradle

    Planifier Épinglé Verrouillé Déplacé Vos autres créations
    30 Messages 3 Publieurs 7.6k Vues 1 Watching
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      @‘Superloup10’:

      Tu peux get la version de minecraft comme étant celle indiqué ici.
      Ensuite pour la version du mod, c’est le même principe.

      Le problème c’est qu’à ce moment là il faut copier tout le repo pour ensuite récupérer cette valeur car elle peut être placée dans un fichier différent

      Site web contenant mes scripts : http://SCAREXgaming.github.io

      Pas de demandes de support par MP ni par skype SVP.
      Je n'accepte sur skype que l…

      1 réponse Dernière réponse Répondre Citer 0
      • Superloup10S Hors-ligne
        Superloup10 Modérateurs
        dernière édition par

        Non, avec ForgeGradle, tu seras toujours obligé de mettre

        minecraft {
        version = "version_aléatoire" // Version aléatoire peut être lu depuis un fichier externe, mais il sera toujours indiqué dans le build.gradle
        }
        

        Donc pour y accéder, tu seras obligé de passer par ```
        project.minecraft.version

        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

        1 réponse Dernière réponse Répondre Citer 0
        • SCAREXS Hors-ligne
          SCAREX
          dernière édition par

          @‘Superloup10’:

          Non, avec ForgeGradle, tu seras toujours obligé de mettre

          minecraft {
          version = "version_aléatoire" // Version aléatoire peut être lu depuis un fichier externe, mais il sera toujours indiqué dans le build.gradle
          }
          

          Donc pour y accéder, tu seras obligé de passer par ```
          project.minecraft.version

          Oui mais dans tous les cas il faut compiler le projet (pas forcément le build mais le mettre en tant que sous-projet)

          Site web contenant mes scripts : http://SCAREXgaming.github.io

          Pas de demandes de support par MP ni par skype SVP.
          Je n'accepte sur skype que l…

          1 réponse Dernière réponse Répondre Citer 0
          • SCAREXS Hors-ligne
            SCAREX
            dernière édition par

            J’ai rajouté une fonctionnalité : on peut générer les versions via un repo maven (en revanche le changelog pour chaque version est vide puisqu’il n’est pas disponible sur maven)

            Par exemple pour le mod FFMT-libs :

            {
            "homepage": "http://ci.mcnanotech.fr/job/FFMT-libs/",
            "1.9.4": {
            "1.6.4.175-mc1.9.4": "",
            "1.6.3.174-mc1.9.4": ""
            },
            "1.9": {
            "1.6.3.173-mc1.9": "",
            "1.6.3.172-mc1.9": "",
            "1.6.3.170-mc1.9": "",
            "1.6.3.169-mc1.9": "",
            "1.6.3.168-mc1.9": "",
            "1.6.3.167-mc1.9": "",
            "1.6.3.166-mc1.9": "",
            "1.6.3.165-mc1.9": "",
            "1.6.3.164-mc1.9": "",
            "1.6.3.163-mc1.9": "",
            "1.6.3.162-mc1.9": "",
            "1.6.3.160-mc1.9": ""
            },
            "1.8.9": {
            "1.6.2.159-mc1.8.9": "",
            "1.6.2.158-mc1.8.9": "",
            "1.6.2.157-mc1.8.9": "",
            "1.6.2.155-mc1.8.9": ""
            },
            "1.8.8": {
            "1.6.2.153-mc1.8.8": "",
            "1.6.2.152-mc1.8.8": "",
            "1.6.2.150-mc1.8.8": "",
            "1.6.2.149-mc1.8.8": ""
            },
            "1.8": {
            "1.6.1.148-mc1.8": "",
            "1.6.1.147-mc1.8": "",
            "1.6.1.146-mc1.8": "",
            "1.6.1.145-mc1.8": "",
            "1.6.1.144-mc1.8": ""
            }
            }
            

            Site web contenant mes scripts : http://SCAREXgaming.github.io

            Pas de demandes de support par MP ni par skype SVP.
            Je n'accepte sur skype que l…

            1 réponse Dernière réponse Répondre Citer 0
            • SCAREXS Hors-ligne
              SCAREX
              dernière édition par

              J’ai ajouté la génération des versions via git : en revanche si vous souhaitez avoir le changelog de git pour l’instant vous êtes obligé d’avoir ajouté les tags correspondant aux versions car sinon on peut pas trouver les commits correspondants aux versions (j’ajouterai par la suite un moyen de générer ce changelog via les hash des commits).

              En revanche je suis bloqué sur un truc : comment générer les versions recommandées et les dernières (pour accéder à la dernière version j’avais pensé à comparer les versions néanmoins le problème est que ça générera la dernière version uniquement pour la dernière version de minecraft).

              Voici le code actuellement généré pour un repo git (ici l’exemple est donné via mon repo SCLib) :

              {
              "homepage": "http://github.com/SCAREXgaming/SCLib/releases",
              "1.7.10": {
              "1.7.10-1.0.0": "SCAREX : First commit\nSCAREX : Modified changelog",
              "1.7.10-1.0.1": "SCAREX : Added gradle wrapper",
              "1.7.10-1.0.3": "SCAREX : still testing\nSCAREX : always testing\nSCAREX : And again\nSCAREX : no comment",
              "1.7.10-1.0.4": "SCAREX : …\nSCAREX : ..\nSCAREX : Changed version",
              "1.7.10-1.0.5": "SCAREX : Trying to add changelog maker",
              "1.7.10-1.1.0": "SCAREX : Added changelog again\nSCAREX : Finally added all the plugins I wanted",
              "1.7.10-1.1.1": "SCAREX : Testing things of jitpack.io",
              "1.7.10-1.1.2": "SCAREX : Nope",
              "1.7.10-1.2.0": "SCAREX : -Added blocks and items lists -Added energy blocks -Added abstract item\nSCAREX : Modified version",
              "1.7.10-1.2.1": "SCAREX : Added test files\nSCAREX : Added Mekanism Testing things with jitpack.io\nSCAREX : Testing : added optional parameter when publishing\nSCAREX : Testing with install task\nSCAREX : New test",
              "1.7.10-1.2.2": "SCAREX : 1.2.2 : - added some CoFH mods for testing - added some source files - fixed bug : the configurator from Mekanism didn\u0027t work\nSCAREX : Renaming + fixed bug"
              }
              }
              

              Site web contenant mes scripts : http://SCAREXgaming.github.io

              Pas de demandes de support par MP ni par skype SVP.
              Je n'accepte sur skype que l…

              1 réponse Dernière réponse Répondre Citer 0
              • robin4002R Hors-ligne
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                dernière édition par

                Version recommandée je pense qu’il faut jenkins.
                De même avec jenkins il serai possible de récupérer le message de commit et l’envoyer dans la version associée.

                1 réponse Dernière réponse Répondre Citer 0
                • SCAREXS Hors-ligne
                  SCAREX
                  dernière édition par

                  @‘robin4002’:

                  Version recommandée je pense qu’il faut jenkins.
                  De même avec jenkins il serai possible de récupérer le message de commit et l’envoyer dans la version associée.

                  Je connais pas très bien l’API de Jenkins, si quelqu’un peut m’aider 😉

                  Site web contenant mes scripts : http://SCAREXgaming.github.io

                  Pas de demandes de support par MP ni par skype SVP.
                  Je n'accepte sur skype que l…

                  1 réponse Dernière réponse Répondre Citer 0
                  • robin4002R Hors-ligne
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                    dernière édition par

                    Je ne l’ai jamais utilisé non plus.

                    1 réponse Dernière réponse Répondre Citer 0
                    • SCAREXS Hors-ligne
                      SCAREX
                      dernière édition par

                      Après le problème aussi c’est que y’a pas tout le monde qui a accès à un Jenkins

                      Site web contenant mes scripts : http://SCAREXgaming.github.io

                      Pas de demandes de support par MP ni par skype SVP.
                      Je n'accepte sur skype que l…

                      1 réponse Dernière réponse Répondre Citer 0
                      • robin4002R Hors-ligne
                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                        dernière édition par

                        C’est pas difficile à mettre en place.
                        Tu peux aussi l’installer en local sur windows.

                        1 réponse Dernière réponse Répondre Citer 0
                        • SCAREXS Hors-ligne
                          SCAREX
                          dernière édition par

                          @‘robin4002’:

                          C’est pas difficile à mettre en place.
                          Tu peux aussi l’installer en local sur windows.

                          Oui si c’est juste pour faire ça autant le faire manuellement (dans tous les cas on peut remplir le json manuellement)

                          Site web contenant mes scripts : http://SCAREXgaming.github.io

                          Pas de demandes de support par MP ni par skype SVP.
                          Je n'accepte sur skype que l…

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002R Hors-ligne
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                            dernière édition par

                            Je pense qu’un programme qui remplit le changelog automatiquement n’a qu’un intérêt si un CI est en place.

                            Car bon, si tu build manuellement le mod en général tu ne fais pas un build à chaque commit, donc tu peux aussi remplir le changelog manuellement avec autre chose que le message de commit.

                            1 réponse Dernière réponse Répondre Citer 0
                            • SCAREXS Hors-ligne
                              SCAREX
                              dernière édition par

                              @‘robin4002’:

                              Je pense qu’un programme qui remplit le changelog automatiquement n’a qu’un intérêt si un CI est en place.

                              Car bon, si tu build manuellement le mod en général tu ne fais pas un build à chaque commit, donc tu peux aussi remplir le changelog manuellement avec autre chose que le message de commit.

                              Ce que je veux dire c’est que tu peux toujours créer un script pour faire une partie, personnellement je préfère que ce programme soit totalement compatible avec git (car c’est quelque chose que tout le monde peut avoir) et non avec des choses qui utilisent un serveur.

                              Je vais voir pour intégrer Jenkins.

                              En attendant je vais utiliser un comparateur pour trouver toutes les dernières version pour chaque version de minecraft, et ces versions seront aussi automatiquement marquées comme recommandée.

                              Site web contenant mes scripts : http://SCAREXgaming.github.io

                              Pas de demandes de support par MP ni par skype SVP.
                              Je n'accepte sur skype que l…

                              1 réponse Dernière réponse Répondre Citer 0
                              • SCAREXS Hors-ligne
                                SCAREX
                                dernière édition par

                                Pour ce qui est de comparer les versions : c’est bon je l’ai ajouté.

                                Actuellement je suis en train de voir pour l’API Jenkins, malheureusement je bloque à un endroit : le json d’une build ne donne pas un accès direct à la version, il ne donne qu’un accès direct à l’id du build ( https://ci.mcnanotech.fr/job/FFMT-libs/175/api/json ). Je voudrai donc savoir si vous auriez un moyen de récupérer cette version facilement ?

                                Site web contenant mes scripts : http://SCAREXgaming.github.io

                                Pas de demandes de support par MP ni par skype SVP.
                                Je n'accepte sur skype que l…

                                1 réponse Dernière réponse Répondre Citer 0
                                • robin4002R Hors-ligne
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                  dernière édition par

                                  Le lire dans le fichier build.gradle ?

                                  Je vais voir si je peux faire un script bash pour faire le changelog, ça sera surement plus simple qu’un plugin gradle.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • SCAREXS Hors-ligne
                                    SCAREX
                                    dernière édition par

                                    @‘robin4002’:

                                    Le lire dans le fichier build.gradle ?

                                    Je vais voir si je peux faire un script bash pour faire le changelog, ça sera surement plus simple qu’un plugin gradle.

                                    Comme je l’ai dit le problème c’est qui faut importer tout le repo pour avoir la version ce qui compliqué beaucoup, sinon je pensais récupérer le nom de l’artifact et le passer dans le pattern de version

                                    Site web contenant mes scripts : http://SCAREXgaming.github.io

                                    Pas de demandes de support par MP ni par skype SVP.
                                    Je n'accepte sur skype que l…

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • robin4002R Hors-ligne
                                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                      dernière édition par

                                      Le fichier build.gradle se trouve dans le dossier de workspace de jenkins.
                                      Donc je ne vois pas en quoi c’est un problème.

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • SCAREXS Hors-ligne
                                        SCAREX
                                        dernière édition par

                                        @‘robin4002’:

                                        Le fichier build.gradle se trouve dans le dossier de workspace de jenkins.
                                        Donc je ne vois pas en quoi c’est un problème.

                                        C’est un problème si la variable est modifiée depuis un autre fichier. Par exemple dans mes mods je change la version depuis le gradle.properties

                                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                                        Pas de demandes de support par MP ni par skype SVP.
                                        Je n'accepte sur skype que l…

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • robin4002R Hors-ligne
                                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs
                                          dernière édition par

                                          Ah oui en effet

                                          1 réponse Dernière réponse Répondre Citer 0
                                          • SCAREXS Hors-ligne
                                            SCAREX
                                            dernière édition par

                                            C’est bon, jenkins a été intégré, voici le fichier généré (sur le jenkins il manquait quelques messages de commits, je peux rien y faire) :

                                            {
                                             "homepage": "http://ci.mcnanotech.fr/job/FFMT-libs/",
                                             "promos": {
                                               "1.10.2-recommended": "1.7.0.176",
                                               "1.10.2-latest": "1.7.0.176"
                                             },
                                             "1.9.4": {
                                               "1.6.4.175": "Robin : bump version number for mc 1.9.4\n",
                                               "1.6.3.174": ""
                                             },
                                             "1.9": {
                                               "1.6.3.173": "Superloup10 : Update Forge, mappings, gradle - add gradle.properties\n",
                                               "1.6.3.172": "Superloup10 : Fix missing mapping\n",
                                               "1.6.3.170": "baumeyerkevin : Doc\n",
                                               "1.6.3.169": "baumeyerkevin : Fix BlockSittable\n",
                                               "1.6.3.168": "Superloup10 : Add registerBlock\n",
                                               "1.6.3.167": "baumeyerkevin : Update build.gradle\n",
                                               "1.6.3.166": "baumeyerkevin : Reverse last\n",
                                               "1.6.3.165": "baumeyerkevin : New option allowing to disable hats\n",
                                               "1.6.3.164": "baumeyerkevin : Update FFMTRegistry\n",
                                               "1.6.3.163": "baumeyerkevin : Update build\n\nbaumeyerkevin : Update to forge 1805\n",
                                               "1.6.3.162": "baumeyerkevin : Fix build\n",
                                               "1.6.3.160": ""
                                             },
                                             "1.8.9": {
                                               "1.6.2.159": "baumeyerkevin : Things\n",
                                               "1.6.2.158": "baumeyerkevin : Imporvement of 3D texts\n",
                                               "1.6.2.157": "baumeyerkevin : Fix encoding\n",
                                               "1.6.2.155": "baumeyerkevin : Update to mc 1.8.9, forge 1669, map 20160102\n"
                                             },
                                             "1.8.8": {
                                               "1.6.2.153": "Robin : fix drawTexture function\n",
                                               "1.6.2.152": "Robin : fix last commit\n",
                                               "1.6.2.150": "baumeyerkevin : Keep hovering text in screen\n",
                                               "1.6.2.149": "baumeyerkevin : Update to mc\u0026forge 1.8.8\n"
                                             },
                                             "1.8": {
                                               "1.6.1.148": "baumeyerkevin : Improve slider\n",
                                               "1.6.1.147": "Robin : java doc, again\n",
                                               "1.6.1.146": "Robin : fix some other javadoc error\n",
                                               "1.6.1.145": "Robin : fix some javadoc error\n",
                                               "1.6.1.144": "Robin : update gradle\n",
                                               "1.6.0.142": "baumeyerkevin : Change things\n",
                                               "1.6.0.141": "baumeyerkevin : New GUI\n",
                                               "1.6.0.140": "baumeyerkevin : Fix texture\n",
                                               "1.6.0.139": "baumeyerkevin : New gui system\n",
                                               "1.6.0.138": "baumeyerkevin : things\n",
                                               "1.6.0.137": "baumeyerkevin : Little fix\n\nbaumeyerkevin : Little fix\n",
                                               "1.6.0.136": "Robin : remove code about NHG\n",
                                               "1.6.0.135": "Robin : update forge, avoid to use reflexion for layer\n",
                                               "1.6.0.134": "jglrxavpok : Fixed crash on servers related to hats\n",
                                               "1.6.0.133": "",
                                               "1.6.0.132": "Robin : fix javadoc\n",
                                               "1.6.0.130": "",
                                               "1.6.0.129": "",
                                               "1.5.0.128": "",
                                               "1.5.0.127": "",
                                               "1.5.0.126": "",
                                               "1.5.0.125": "",
                                               "1.5.0.120": "",
                                               "1.5.0.119": "",
                                               "1.5.0.118": ""
                                             },
                                             "1.7.2": {
                                               "1.4.2.84": "",
                                               "1.4.2.83": "",
                                               "1.4.2.82": "",
                                               "1.4.2.81": "",
                                               "1.4.2.80": "",
                                               "1.4.2.79": "",
                                               "1.4.1.76": "",
                                               "1.4.1.75": "",
                                               "1.4.0.72": "",
                                               "1.4.0.71": "",
                                               "1.4.0.70": "",
                                               "1.4.0.69": "",
                                               "1.4.0.68": ""
                                             },
                                             "1.7.10": {
                                               "1.5.0.113": "",
                                               "1.5.0.112": "",
                                               "1.5.0.111": "",
                                               "1.5.0.110": "",
                                               "1.5.0.105": "",
                                               "1.5.0.103": "",
                                               "1.5.0.100": "",
                                               "1.4.4.99": "",
                                               "1.4.4.98": "",
                                               "1.4.4.97": "",
                                               "1.4.4.96": "",
                                               "1.4.4.95": "",
                                               "1.4.4.94": "",
                                               "1.4.4.93": "",
                                               "1.4.3.91": "",
                                               "1.4.3.90": "",
                                               "1.4.3.89": "",
                                               "1.4.3.88": "",
                                               "1.4.3.87": ""
                                             },
                                             "1.10.2": {
                                               "1.7.0.176": "Superloup10 : Bump version, forge version and mappings\n"
                                             }
                                            }
                                            

                                            J’ai d’ailleurs remarqué un petit bug : la version 1.10 passe en dessous des autres vu que les versions sont comparés en tant que String, le problème est que je pense que ça alourdira trop le code si je créer un vrai comparateur de versions.

                                            Au passage : la génération du changelog avec jenkins est très longue du au fait qu’il faut accéder à un json par version donc il faudrait que je fasse un peu de multi-threading pour essayer d’accélérer ça.

                                            Site web contenant mes scripts : http://SCAREXgaming.github.io

                                            Pas de demandes de support par MP ni par skype SVP.
                                            Je n'accepte sur skype que l…

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB