{"id":39706778,"url":"https://github.com/barrelmaker97/playbooks","last_synced_at":"2026-01-18T10:34:13.248Z","repository":{"id":259070519,"uuid":"876247794","full_name":"barrelmaker97/playbooks","owner":"barrelmaker97","description":"Ansible Playbook Library","archived":false,"fork":false,"pushed_at":"2025-12-12T05:24:10.000Z","size":385,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-13T13:55:04.105Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/barrelmaker97.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":"2024-10-21T16:39:12.000Z","updated_at":"2025-12-12T05:23:59.000Z","dependencies_parsed_at":"2025-05-10T16:25:19.995Z","dependency_job_id":"aeeb169a-5fbf-4203-8470-227d98e19a7b","html_url":"https://github.com/barrelmaker97/playbooks","commit_stats":null,"previous_names":["barrelmaker97/playbooks"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/barrelmaker97/playbooks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barrelmaker97%2Fplaybooks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barrelmaker97%2Fplaybooks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barrelmaker97%2Fplaybooks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barrelmaker97%2Fplaybooks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/barrelmaker97","download_url":"https://codeload.github.com/barrelmaker97/playbooks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/barrelmaker97%2Fplaybooks/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28534487,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T10:13:46.436Z","status":"ssl_error","status_checked_at":"2026-01-18T10:13:11.045Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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-18T10:34:12.648Z","updated_at":"2026-01-18T10:34:13.220Z","avatar_url":"https://github.com/barrelmaker97.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# playbooks\nPersonal Ansible Playbook Library\n\n# Installing Ansible\n```bash\n./install-ansible.sh\n```\n\n# Secrets Management\nSecret values needed for playbooks are encrypted with age/sops,\nwhich will be installed by the `setup.yaml` playbook if they are not present.\nThe age key file is expected to be at `~/.config/sops/age/keys.txt`.\n\n# Prerequisites\nThe `setup.yaml` playbook depends on `talosctl` to generate artifacts for cluster setup\nand will also be needed for bootstrapping after the playbook is complete. It can be installed\nusing [this guide](https://www.talos.dev/v1.9/talos-guides/install/talosctl/). Be sure to install\nthe version that matches the version of Talos to be used for the cluster.\n\n# Running Playbooks\nTo run all playbooks, use site.yaml:\n```bash\nansible-playbook site.yaml\n```\n\nIndividual playbooks can be run in a similar manner:\n```bash\nansible-playbook setup.yaml\n```\n# IP Plan\n| Name       | Address       | Hostname           |\n|------------|---------------|--------------------|\n| Virtual IP | 192.168.15.40 | kube.poseidon.lan  |\n| Node 1     | 192.168.15.41 | node1-poseidon.lan |\n| Node 2     | 192.168.15.42 | node2-poseidon.lan |\n| Node 3     | 192.168.15.43 | node3-poseidon.lan |\n\n# Cluster Bootstrap\n```bash\n# Node 1\ntalosctl -n node1-poseidon.lan apply-config --insecure --file node1-poseidon.yaml\ntalosctl -n node1-poseidon.lan -e node1-poseidon.lan bootstrap\ntalosctl -n node1-poseidon.lan -e node1-poseidon.lan kubeconfig\n\n# Node 2\ntalosctl -n node2-poseidon.lan apply-config --insecure --file node2-poseidon.yaml\n\n# Node 3\ntalosctl -n node3-poseidon.lan apply-config --insecure --file node3-poseidon.yaml\n```\n\n# Cluster Upgrade\n## Upgrade Talos\nBe sure to wait for upgrade to complete on each node before proceeding to the next one. This means waiting for all workloads to be in a good state.\n```bash\n# Node 1\ntalosctl -e node2-poseidon.lan -n node1-poseidon.lan upgrade --image factory.talos.dev/installer/\u003cImage ID\u003e:\u003cTalos Version\u003e --preserve\n\n# Node 2\ntalosctl -e node1-poseidon.lan -n node2-poseidon.lan upgrade --image factory.talos.dev/installer/\u003cImage ID\u003e:\u003cTalos Version\u003e --preserve\n\n# Node 3\ntalosctl -e node1-poseidon.lan -n node3-poseidon.lan upgrade --image factory.talos.dev/installer/\u003cImage ID\u003e:\u003cTalos Version\u003e --preserve\n```\n## Upgrade Talosctl\nDownload the talosctl binary from the Github release page for the correct architecture. Then move it to the correct location and make sure it is executable. For example:\n```bash\nsudo mv ./talosctl-linux-amd64 /usr/local/bin/talosctl\nsudo chmod +x /usr/local/bin/talosctl\n```\n\n## Upgrade Kubernetes\n```bash\ntalosctl -n node1-poseidon.lan upgrade-k8s --dry-run\ntalosctl -n node1-poseidon.lan upgrade-k8s\n```\n\n# License\n\nCopyright (c) 2024 Nolan Cooper\n\nThis chart collection is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis chart collection is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this chart collection.  If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarrelmaker97%2Fplaybooks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbarrelmaker97%2Fplaybooks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbarrelmaker97%2Fplaybooks/lists"}