Difference between revisions of "Github Actions"
Jump to navigation
Jump to search
(Plug in new changelog generation workflow) |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
They're automations that help Mudlet reduce administrative overhead. See Github's [https://github.com/features/actions excellent overview] for them. | They're automations that help Mudlet reduce administrative overhead. See Github's [https://github.com/features/actions excellent overview] for them. | ||
= Which have we got? = | = Which have we got? = | ||
− | # Compile Mudlet | + | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/build-mudlet.yml Compile Mudlet], builds Mudlet to be available as stand-alone zips for every pull request. When: on every Git push. |
− | # Update 3rdparty libraries used with Mudlet. This is: IRE Mapping script, Lua code formatter, character width algorithm, and our forks of edbee, sparkle-glue, dblsqd, qtkeychain. Note that fork updates don't check the origin repository but rather our forked version to ensure the main repo is up to date with it. | + | # [https://github.com/Mudlet/Mudlet/tree/development/.github/workflows#:~:text=25%20days%20ago-,update-3rdparty.yml,-Actually%20disable%20widechar_width Update 3rdparty libraries] used with Mudlet. When: every Friday night or manually. (This is: IRE Mapping script, Lua code formatter, character width algorithm, and our forks of edbee, sparkle-glue, dblsqd, qtkeychain. Note that fork updates don't check the origin repository but rather our forked version to ensure the main repo is up to date with it.) |
− | + | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/update-autocompletion.yml Update autocompletion information] in Mudlet. When: every Friday night or manually. | |
− | # Update text available in Crowdin for translation. When: every Friday night or manually. | + | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/update-translations.yml Update] [[Translating_Mudlet|text available in Crowdin]] for translation. When: every Friday night or manually. |
− | # | + | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/clangtidy-diff-analysis.yml Clang-tidy code analysis], checks Mudlet code for common coding issues. When: on every Git push. |
+ | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/codeql-analysis.yml CodeQL code analysis], similarly checks Mudlet code for issues, using a different tool. When: on every Git push. | ||
+ | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/codespell-analysis.yml Codespell], checks Mudlet code for common typos. Not necessarily a spellchecker, more of a typo checker. When: on every Git push. | ||
+ | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/link-ptbs-to-dblsqd.yml Links PTBs to dblsqd], ensures that [https://make.mudlet.org/snapshots/?platform=all&source=ptb daily Public Test Builds] are linked to the update service (see [https://github.com/Mudlet/Mudlet/issues/4843 why]). When: daily, an hour after PTB builds have started. | ||
+ | # [https://github.com/Mudlet/Mudlet/blob/development/.github/workflows/update-geyser-docs.yml Upload Geyser docs] to the website. When: every Friday night or manually. | ||
+ | # [https://github.com/Mudlet/Mudlet/actions/workflows/generate-changelog.yml Generate a changelog] of the latest improvements. When: every Friday night or manually. | ||
Line 12: | Line 17: | ||
= Running actions manually = | = Running actions manually = | ||
− | As a member of the Mudlet core dev team, visit the | + | As a member of the Mudlet core dev team, visit the list of actions at https://github.com/Mudlet/Mudlet/actions. Once there, pick an action, and use the <code>Run workflow</code> menu: |
− | [[File:Running an action manually.png| | + | [[File:Running an action manually.png|frame|center]] |
− | + | You can also select a particular branch you'd like the action to run against. Press the button and your workflow will start running. |
Latest revision as of 07:28, 14 March 2022
What are they
They're automations that help Mudlet reduce administrative overhead. See Github's excellent overview for them.
Which have we got?
- Compile Mudlet, builds Mudlet to be available as stand-alone zips for every pull request. When: on every Git push.
- Update 3rdparty libraries used with Mudlet. When: every Friday night or manually. (This is: IRE Mapping script, Lua code formatter, character width algorithm, and our forks of edbee, sparkle-glue, dblsqd, qtkeychain. Note that fork updates don't check the origin repository but rather our forked version to ensure the main repo is up to date with it.)
- Update autocompletion information in Mudlet. When: every Friday night or manually.
- Update text available in Crowdin for translation. When: every Friday night or manually.
- Clang-tidy code analysis, checks Mudlet code for common coding issues. When: on every Git push.
- CodeQL code analysis, similarly checks Mudlet code for issues, using a different tool. When: on every Git push.
- Codespell, checks Mudlet code for common typos. Not necessarily a spellchecker, more of a typo checker. When: on every Git push.
- Links PTBs to dblsqd, ensures that daily Public Test Builds are linked to the update service (see why). When: daily, an hour after PTB builds have started.
- Upload Geyser docs to the website. When: every Friday night or manually.
- Generate a changelog of the latest improvements. When: every Friday night or manually.
All of Mudlet's Github actions are available in the repository.
Running actions manually
As a member of the Mudlet core dev team, visit the list of actions at https://github.com/Mudlet/Mudlet/actions. Once there, pick an action, and use the Run workflow
menu:
You can also select a particular branch you'd like the action to run against. Press the button and your workflow will start running.