{"id":15103570,"url":"https://github.com/telefonica/puppet-github-actions-runner","last_synced_at":"2025-09-27T02:31:39.798Z","repository":{"id":38366528,"uuid":"293500438","full_name":"Telefonica/puppet-github-actions-runner","owner":"Telefonica","description":"In This Repository you can find a module that will setup all of the files and configuration needed for GitHub Actions runner to work on Linux hosts (Ubuntu, Debian and CentOS).","archived":true,"fork":false,"pushed_at":"2023-11-24T08:06:58.000Z","size":125,"stargazers_count":11,"open_issues_count":9,"forks_count":15,"subscribers_count":30,"default_branch":"master","last_synced_at":"2025-09-06T07:39:55.051Z","etag":null,"topics":["cdco","github","github-action","github-actions-runner","managed","org-cdo","puppet","puppet-module","srv-novum"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Telefonica.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":".github/CODEOWNERS","security":null,"support":null,"governance":null}},"created_at":"2020-09-07T10:49:52.000Z","updated_at":"2025-08-19T10:33:55.000Z","dependencies_parsed_at":"2023-11-24T09:25:16.877Z","dependency_job_id":"dcc57f01-4f36-4280-84b1-a5f5c1bfb64a","html_url":"https://github.com/Telefonica/puppet-github-actions-runner","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"purl":"pkg:github/Telefonica/puppet-github-actions-runner","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Telefonica%2Fpuppet-github-actions-runner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Telefonica%2Fpuppet-github-actions-runner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Telefonica%2Fpuppet-github-actions-runner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Telefonica%2Fpuppet-github-actions-runner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Telefonica","download_url":"https://codeload.github.com/Telefonica/puppet-github-actions-runner/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Telefonica%2Fpuppet-github-actions-runner/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":277171518,"owners_count":25773233,"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":"2025-09-27T02:00:08.978Z","response_time":73,"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":["cdco","github","github-action","github-actions-runner","managed","org-cdo","puppet","puppet-module","srv-novum"],"created_at":"2024-09-25T19:40:32.704Z","updated_at":"2025-09-27T02:31:39.549Z","avatar_url":"https://github.com/Telefonica.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003e **:warning: Project not maintained (we no longer can keep up with the changes and validate them, feel free to fork it)**\n\n![PDK Test Unit](https://github.com/Telefonica/puppet-github-actions-runner/workflows/Run%20pdk%20test%20unit/badge.svg?branch=master)\n\n# GitHub Actions Runner\n\nAutomatic configuration for running GitHub Actions as a service\n\n#### Table of Contents\n\n1. [Description](#description)\n    - [Hiera configuration examples](#hiera-configuration-examples)\n    - [Github Enterprise examples](#github-enterprise-examples)\n2. [Limitations - OS compatibility, etc.](#limitations)\n3. [Development - Guide for contributing to the module](#development)\n\n## Description\n\nThis module will setup all of the files and configuration needed for GitHub Actions runner to work on Debian (Stretch and Buster) and CentOS7 hosts.\n\n### hiera configuration examples\n\nThis module supports configuration through hiera.\n\n#### Creating an organization level Actions runner\n\n```yaml\ngithub_actions_runner::ensure: present\ngithub_actions_runner::base_dir_name: '/data/actions-runner'\ngithub_actions_runner::package_name: 'actions-runner-linux-x64'\ngithub_actions_runner::package_ensure: '2.277.1'\ngithub_actions_runner::repository_url: 'https://github.com/actions/runner/releases/download'\ngithub_actions_runner::org_name: 'my_github_organization'\ngithub_actions_runner::personal_access_token: 'PAT'\ngithub_actions_runner::user: 'root'\ngithub_actions_runner::group: 'root'\ngithub_actions_runner::instances:\n  example_org_instance:\n    labels:\n      - self-hosted-custom\n```\n\nNote, your `personal_access_token` has to contain the `admin:org` permission.\n\n#### Creating an additional repository level Actions runner\n```yaml\ngithub_actions_runner::instances:\n  example_org_instance:\n    labels:\n      - self-hosted-custom1\n  example_repo_instance:\n    repo_name: myrepo\n    labels:\n      - self-hosted-custom2\n```\n\nNote, your `personal_access_token` has to contain the `repo` permission.\n\n#### Instance level overwrites\n```yaml\ngithub_actions_runner::instances:\n  example_org_instance:\n    ensure: absent\n    labels:\n      - self-hosted-custom1\n  example_repo_instance:\n    org_name: overwritten_orgnization\n    repo_name: myrepo\n    labels:\n      - self-hosted-custom2\n```\n\n#### Adding a global proxy and overwriting an instance level proxy\n```yaml\ngithub_actions_runner::http_proxy: http://proxy.local\ngithub_actions_runner::https_proxy: http://proxy.local\ngithub_actions_runner::instances:\n  example_org_instance:\n    http_proxy: http://instance_specific_proxy.local\n    https_proxy: http://instance_specific_proxy.local\n    no_proxy: example.com\n    labels:\n      - self-hosted-custom1\n```\n\n### Github Enterprise examples\nTo use the module with Github Enterprise Server, you have to define these parameters:\n```yaml\ngithub_actions_runner::github_domain: \"https://git.example.com\"\ngithub_actions_runner::github_api: \"https://git.example.com/api/v3\"\n```\n\nIn addition to the runner configuration examples above, you can also configure runners\non the enterprise level by setting a value for `enterprise_name`, for example:\n```yaml\ngithub_actions_runner::ensure: present\ngithub_actions_runner::base_dir_name: '/data/actions-runner'\ngithub_actions_runner::package_name: 'actions-runner-linux-x64'\ngithub_actions_runner::package_ensure: '2.277.1'\ngithub_actions_runner::repository_url: 'https://github.com/actions/runner/releases/download'\ngithub_actions_runner::enterprise_name: 'enterprise_name'\ngithub_actions_runner::personal_access_token: 'PAT'\ngithub_actions_runner::user: 'root'\ngithub_actions_runner::group: 'root'\ngithub_actions_runner::instances:\n```\n\nNote, your `personal_access_token` has to contain the `admin:enterprise` permission.\n\n### Update PATH used by Github Runners\n\nBy default, puppet will not modify the values that the runner scripts create when\nthe runner is set.\n\nIn case you need to use another value of paths in the environment variable PATH,\nyou can define through hiera. For example:\n\n- For all runners defined:\n  ```yaml\n  github_actions_runner::path:\n    - /usr/local/bin\n    - /usr/bin\n    - /bin\n    - /my/own/path\n  ```\n- For just a specific runner:\n  ```yaml\n  github_actions_runner::instances:\n    example_org_instance:\n      path:\n        - /usr/local/bin\n        - /usr/bin\n        - /bin\n        - /my/own/path\n      labels:\n        - self-hosted-custom\n  ```\n\n## Adding environment variables to runner\n\nThe runner uses environment variables to decide pre/post-run scripts:\nhttps://docs.github.com/en/actions/hosting-your-own-runners/running-scripts-before-or-after-a-job#triggering-the-scripts\n\n```yaml\ngithub_actions_runner::env:\n  ACTIONS_RUNNER_HOOK_JOB_STARTED: \"/cleanup_script\"\n  FOO: \"bar\"\n```\n\n\n## Limitations\n\nTested on Debian 9 (stretch), Debian 10 (buster) and CentOS7 hosts.\nFull list of operating systems support and requirements are described in `metadata.json` file.\n\n## Development\n\nThere are a few guidelines that we need contributors to follow so that we can have a chance of keeping on top of things. For more information, see Puppet Forge [module contribution guide](https://puppet.com/docs/puppet/7.1/modules_publishing.html).\n\n## License\n\n*GitHub Actions Runner* is available under the Apache License, Version 2.0. See LICENSE file\nfor more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftelefonica%2Fpuppet-github-actions-runner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftelefonica%2Fpuppet-github-actions-runner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftelefonica%2Fpuppet-github-actions-runner/lists"}