{"id":35758289,"url":"https://github.com/ajaust/gh-actions-101","last_synced_at":"2026-01-06T22:06:21.388Z","repository":{"id":324769604,"uuid":"1098503575","full_name":"ajaust/gh-actions-101","owner":"ajaust","description":null,"archived":false,"fork":false,"pushed_at":"2025-11-17T19:22:27.000Z","size":107,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-17T20:26:44.067Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ajaust.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-17T19:21:54.000Z","updated_at":"2025-11-17T19:22:31.000Z","dependencies_parsed_at":"2026-01-05T19:09:30.763Z","dependency_job_id":null,"html_url":"https://github.com/ajaust/gh-actions-101","commit_stats":null,"previous_names":["ajaust/gh-actions-101"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/ajaust/gh-actions-101","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaust%2Fgh-actions-101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaust%2Fgh-actions-101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaust%2Fgh-actions-101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaust%2Fgh-actions-101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ajaust","download_url":"https://codeload.github.com/ajaust/gh-actions-101/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ajaust%2Fgh-actions-101/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28229153,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2026-01-06T02:00:07.049Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-06T22:03:46.057Z","updated_at":"2026-01-06T22:06:21.374Z","avatar_url":"https://github.com/ajaust.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub Actions 101\n\nThis repository contains the content used for a introductionary workshop about\nGitHub Actions. The intendent workshop length is 45-60 minutes. The idea of the\nworkshop is that the instructor goes through the repository and steps required\nin a live session such that students could potentially follow along. This also\nrepends a bit on whether one wants to allow for questions during the tutorial\nPlease be aware that GitHub Actions are actively developed by GitHub and this\nworkshop may be out of date.\n\nThe `notes.md` file in this repository contains the lecturer's notes. If you\nwant to follow along during the workshop, but get lost or want to see a command\nagain, check if it is available in the `notes.md`.\n\nLast updated: November 2025\n\n## Requirements\n\nIn order to follow the steps of this workshop you need\n\n-   A GitHub account\n-   Enough credits/minutes for workflows to run. The amount of workflow minutes\n    needed for this workshop is low.\n-   A copy or fork of this repository.\n\n    - If you create a fork, you may want to copy all branches instead\n    of `main` only. There is a branch called `solution` that contains the final\n    state of the repository.\n\n    - If you forked the repository, ensure that Actions are enabled\n\n      ![screenshot of repository settings showing where to enable GitHub Actions](./media/gh-allow-action-setting.png)\n\n      GitHub might disable the Actions on forks for improved security.\n\nYou can then work on your fork/copy via a local clone on you pc or by using a\nGitHub Codespace. The repository contains a devcontainer configuration such\nthat you can start a codespace directly from this repository.\n\n## Learning Goals\n\n-   You are able to add workflows to a Git repository.\n-   You are able to inspect the results of a workflow.\n-   You know some common, useful actions provided by GitHub.\n-   You know where to look for more information about GitHub workflows.\n\n## Checkpoints\n\n-   `main` branch: Contains the starting point\n-   `solution` branch: Contains the repository in its intended final state\n\n## Useful links and further topics\n\n-   [Official GitHub Actions documentation](https://docs.github.com/en/actions)\n-   [GitHub Marketplace (filter set to \"Actions\")](https://github.com/marketplace?type=actions)\n-   [Security in Actions](https://docs.github.com/en/actions/concepts/security/)\n    -   [Secure use](https://docs.github.com/en/actions/reference/security/secure-use)\n    -   [GITHUB_TOKEN in\n    workflows](https://docs.github.com/en/actions/tutorials/authenticate-with-github_token)\n    -   [Permissions\n        overview](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#account-permissions)\n    -   [Security how tos](https://docs.github.com/en/actions/how-tos/secure-your-work)\n-   [Billing and usage](https://docs.github.com/en/actions/concepts/billing-and-usage)\n-   [Docker containers in Actions](https://docs.github.com/en/actions/tutorials/use-containerized-services/create-a-docker-container-action)\n-   `actionlint` linter\n    -   [Repository](https://github.com/rhysd/actionlint)\n    -   [Playground](https://rhysd.github.io/actionlint/)\n\n## License\n\nThis work is licensed under a\n[Creative Commons Attribution 4.0 International License][cc-by].\n\n[![CC BY 4.0][cc-by-image]][cc-by]\n\n[cc-by]: http://creativecommons.org/licenses/by/4.0/\n[cc-by-image]: https://i.creativecommons.org/l/by/4.0/88x31.png\n[cc-by-shield]: https://img.shields.io/badge/License-CC%20BY%204.0-blue.svg\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajaust%2Fgh-actions-101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fajaust%2Fgh-actions-101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fajaust%2Fgh-actions-101/lists"}