Skip to content

File Generation

The GitHub App can generate a variety of files using a config file as input. It will also keep them updated when the underlying templates get updated, making it easy to have a common structure across multiple repositories and branches.

It also generated a header that is used again by the application on subsequent runs. By default the application will not overwrite files that have not being generated, which is detected by checking this header. If wanted, this check can be turned of using the overwrite property.

Format of the generated header
<meta>
   <source>@pssbletrngle/github-meta-generator</source>
   <version>1.0.84</version>
   <timestamp>2026-06-08T09:56:01.413Z</timestamp>
   <hash>9da437811bc1d494</hash>
</meta>

By default the application commits these files directly to the targeted branch. Using the strategy property you can also configure it to create a pull request using a branch it will create itself.

GitHub workflows

can be disabled by setting the workflows property to false

Depending on the configuration, a test.yml, a release.yml and a labeler.yml is generated.

  • The release.yml workflow takes care of the automatic release as described here. The property upload.strategy defines when the release is triggered and can be either push or release

  • The test.yml workflow takes care of running various checks, including Spotless, JUnit Tests and SonarQube, if any of these are configured. To sonar check is only enabled if the property sonar is set to true.

    It also takes care of publishing snapshot versions, unless the property upload.snapshots is set to false. This is done by passing the environment variable SNAPSHOT to the gradle commands. Everything else has to be done by the gradle setup itself. The com.possible-triangle.* plugins react to this variable and configure the publishing accordingly.

  • The labeler.yml workflows uses github/issue-labeler to automatically set some labels on newly created issues. It uses a config file that is also being generated.

Issue Templates

can be disabled by setting the issueTemplates property to false

Issue templates are YAML files defining a form with various inputs that issue reporters have to fill out when creating a ticket.

There is a Feature Request and a Bug Report template generated. The app also sets the blank_issues_enabled to false in .github/config.yml to force reports to select one of these templates.

There is nothing preventing you from defining additional issue templates.

Editor Config

can be disabled by setting the editorconfig property to false

An .editorconfig file is being generated, defining some basic styling requirements.

License

can be disabled by setting the license property to false

A basic MIT licenses that excludes any assets and marks them as ARR

Labeler Config

can be disabled by setting the configs property to false

This file specifies some issue labels that are automatically added to new issues depending on the issue title and description. These currently are the minecraft version (1) and mod loader (2) labels.

  1. for example 1.21.x or 26.1.x
  2. for example neoforge or fabric