{"id":21919833,"url":"https://github.com/kernelci/builder-config2","last_synced_at":"2025-03-22T10:20:09.815Z","repository":{"id":45226832,"uuid":"73191228","full_name":"kernelci/builder-config2","owner":"kernelci","description":"Ansible configuration for kernel builders","archived":false,"fork":false,"pushed_at":"2023-08-04T06:36:17.000Z","size":64,"stargazers_count":0,"open_issues_count":5,"forks_count":6,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-01-27T10:11:31.720Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-2.1","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kernelci.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}},"created_at":"2016-11-08T14:01:46.000Z","updated_at":"2022-07-13T07:32:18.000Z","dependencies_parsed_at":"2024-11-28T20:21:24.323Z","dependency_job_id":null,"html_url":"https://github.com/kernelci/builder-config2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kernelci%2Fbuilder-config2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kernelci%2Fbuilder-config2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kernelci%2Fbuilder-config2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kernelci%2Fbuilder-config2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kernelci","download_url":"https://codeload.github.com/kernelci/builder-config2/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244938716,"owners_count":20535289,"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","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":"2024-11-28T20:11:17.989Z","updated_at":"2025-03-22T10:20:09.793Z","avatar_url":"https://github.com/kernelci.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# KernelCI Builder Configuration\n\nThis reposotiry contains the Ansible-based configuration for KernelCI builder\nVMs.  They is used for building rootfs images, running bisections and run jobs\nin Kubernetes with dedicated credentials.\n\n## Prerequisites\n\nFirst, install the Ansible tools.  On Debian systems:\n\n    sudo apt install ansible\n\nThen some necessary files are missing from this repository since they contain\nsecrets.  In order to make the Ansible commands work, those files are necessary\nand need to be linked in the repository.  They are included in the\n`builder-config-data` encrypted repository, which only the KernelCI SysAdmin\nteam have access to.  When deploying your own instance of KernelCI, you may\ncreate a similar repository for your own use-case.\n\nThe encrypted files for main KernelCI instance are set up this way:\n\n    cd ..\n    git clone https://github.com/kernelci/builder-config-data.git\n    git-crypt unlock\n    cd ../builder-config2\n    ln -s ../builder-config-data/host_vars\n    ln -s ../builder-config-data/group_vars\n\nThe host names in the [hosts](./hosts) file are defined and used only\ninternally for the Ansible configurations.  The real host names and/or their IP\naddresses are stored in either the `group_vars/` or `host_vars/` directory\nwhich are linked from the encrypted repository.\n\n## Run the Configuration\n\nTo just go through all the tasks, useful to setup a new builder:\n\n    ansible-playbook -i hosts site.yml\n\nThis assumes that you have configured the `host_vars/` and `group_vars/`\ndirectories with all the necessary parameters from the [builder-config-data](https://github.com/kernelci/builder-config-data) repository.\n\n### Run only some specific tasks\n\nIf you need to run only a subset of all the tasks, you can limit the ones to run\nusing the available tags:\n\n    ansible-playbook -i hosts site.yml --tags=$TAG,$TAG\n\nFor example:\n\n    ansible-playbook -i hosts site.yml --tags=mips,mirror\n\n### Run only on some builders\n\nIf you want to run the tasks only on a subset of the builders, you can limit\nwhich one ansible will access:\n\n    ansible-playbook -i hosts site.yml -l $HOST_NAME\n\nFor example:\n\n    ansible-playbook -i hosts site.yml -l kbuilder6,kbuilder7\n\n## Other Useful Commands\n\nTo check the [facts](http://docs.ansible.com/ansible/setup_module.html) on a host:\n\n    ansible -m setup -i hosts $HOST_GROUP_NAME\n\n### Running a simple command remotely\n\nIf you need to run a simple one-time command on the managed hosts:\n\n    ansible -i hosts -m raw -a \"$SHELL_COMMAND\" $HOST_GROUP_NAME\n\nFor example:\n\n    ansible -i hosts -m raw -a \"rm -rf /srv/mirrors\" linaro\n    ansible -i hosts -m raw -a \"rm -rf /srv/mirrors\" linaro -l kbuilder6,kbuilder7\n\nThe latter is limited to `kbuilder6` and `kbuilder7` only.\n\nOther examples:\n\n    ansible -i hosts -m apt -a \"name=$PACKAGE_NAME\" linaro # Installs a single package across all \"linaro\" hosts\n\nThe `-m` switch enables to use a single ansible module from all the\n[available ones](http://docs.ansible.com/ansible/list_of_all_modules.html).\n\n### Notes\n\n* The `$HOST_GROUP_NAME` name is the name given, between square brackets, in\nthe [hosts](./hosts) file to a group of hosts (i.e. `[linaro]`).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkernelci%2Fbuilder-config2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkernelci%2Fbuilder-config2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkernelci%2Fbuilder-config2/lists"}