X Tutup
Skip to content

Latest commit

 

History

History
81 lines (51 loc) · 5.77 KB

File metadata and controls

81 lines (51 loc) · 5.77 KB

How to archive a module?

You moved the contents of a module into other modules and now the old one is empty? You cleaned broken and deprecated code out of a module and now it's empty? You found a module, that is not used anymore and won't be in the near future but is fully functional? You found a module that wasn't tested for ages and is probably just broken?

Well maybe it's time to archive that module.

Prerequisites

The following steps are required before archiving:

  • Remove the module name from any distro's gradle.properties file in the Index module
  • Remove the module name and description from the engine's module list
  • Remove the module dependency from any other module's module.txt file

Archiving unused modules

Modules that are simply currently not in use (and won't be in the near future) are welcome to stay in the "Terasology" GitHub organization.

For these, you can simply (if you have the required permissions) go to the module's repository settings, scroll down to the very bottom and click on "Archive this repository". This will mark the repository as archived and read-only. Thus, if it gets traction again,

Archiving broken / deprecated modules

Modules that are broken or deprecated or whose contents were moved into other modules - to cut it short modules that "won't be coming back" - should be removed from the "Terasology" GitHub organization. For these modules, we have a dedicated "Terasology-Archived" Github organization.

To archive such a module, you can (if you have the required permissions) go to the module' repository settings, scroll down to the very bottom and click on "Transfer". This will open up a form asking for the new organization this repository should be moved to. Enter "Terasology-Archived" and confirm.

Please note, that you need to have permissions to create repositories in "Terasology-Archived" to be able to do so.

How to restart the Artifactory

Prerequisites:

  • Access to Digital Ocean "Terasology" project
  • Optionally: SSH key configured on the artifactory droplet

Instructions:

  1. Log in to Digital Ocean (DO) and make sure you're on the "Terasology" project
  2. Click on the "artifactory.terasology.org" droplet
  3. If you have an SSH key configured on the artifactory droplet follow the steps below, otherwise go to cheat-restart
  4. Copy the ipv4 address
  5. Open a terminal and use SSH to connect to the droplet: ssh root@<ipv4>
  6. Optional: If there is an issue with the artifactory and you know what you're doing, try to investigate the issue
  7. Restart the artifactory: service artifactory restart
  8. End the SSH connection and log out of DO

Cheat Restart

  1. If not yet done, log in to Digital Ocean (DO), make sure you're on the "Terasology" project and click on the "artifactory.terasology.org" droplet
  2. In the droplet sub-navigation on the left, go to "Power"
  3. Click on "Turn off" and wait until the droplet is successfully stopped
  4. Click on "Turn on" and wait until the droplet is successfully running again

How to fix an expired GitHub Action token

The project-autoadd GitHub action requires privileges on projects to do its work. For this, it uses a Personal Access Token (PAT) with project scope stored in the organization secrets as PROJECT_GITHUB_TOKEN. This PAT may expire at some point in time leading to failures of the GitHub action due to missing privileges. To fix this, you'll need to perform the following steps. Please note, that you'll require administration privileges on the MovingBlocks organization to modify the organization secrets.

  1. Go to your account's Settings -> Developer settings -> Personal Access Tokens -> Tokens (classic)

    image

  2. Generate a new classic token, give it a name, set an expiry date (recommended: 90 days) and enable the project scope (Full control of projects). Do not enable any other privileges, they are not needed.

    image

  3. Note: Do not reload the resulting page before you created the org secret as you'll not be able to see the generated token again!

    Go to the organization's Settings -> Secrets -> Actions If you cannot access the settings or secrets, you're probably not an organization admin. Please approach one of the maintainers on our Discord Server to support you.

    image

  4. Remove the existing PROJECT_GITHUB_TOKEN secret.

  5. Create a new organization secret, name it PROJECT_GITHUB_TOKEN, leave the "Repository access" default and copy the token you generated earlier into the Value field

    image

  6. Retrigger the last failed run of the project-audoadd GitHub action by selecting the run in the Actions view and clicking on "Re-run all jobs".

X Tutup