{"id":14128394,"url":"https://github.com/trishnaguha/build-atomic-host","last_synced_at":"2025-09-20T18:32:41.147Z","repository":{"id":72733505,"uuid":"80917916","full_name":"trishnaguha/build-atomic-host","owner":"trishnaguha","description":"Ansible Playbook to automate building own Atomic Host with Customized Packages","archived":false,"fork":false,"pushed_at":"2017-05-28T04:55:38.000Z","size":38,"stargazers_count":15,"open_issues_count":3,"forks_count":1,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-12-30T18:41:45.022Z","etag":null,"topics":["ansible","atomic","ostree"],"latest_commit_sha":null,"homepage":"https://trishnag.wordpress.com/2017/03/27/customize-packages-for-atomic-host-ansible-automation","language":null,"has_issues":true,"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/trishnaguha.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}},"created_at":"2017-02-04T12:26:46.000Z","updated_at":"2022-11-06T09:58:52.000Z","dependencies_parsed_at":null,"dependency_job_id":"9fd3ddbb-aee8-4c7b-8b4d-d49c19a5aaea","html_url":"https://github.com/trishnaguha/build-atomic-host","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/trishnaguha%2Fbuild-atomic-host","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trishnaguha%2Fbuild-atomic-host/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trishnaguha%2Fbuild-atomic-host/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trishnaguha%2Fbuild-atomic-host/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trishnaguha","download_url":"https://codeload.github.com/trishnaguha/build-atomic-host/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233682445,"owners_count":18713552,"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":["ansible","atomic","ostree"],"created_at":"2024-08-15T16:01:40.263Z","updated_at":"2025-09-20T18:32:35.895Z","avatar_url":"https://github.com/trishnaguha.png","language":null,"funding_links":[],"categories":["Others"],"sub_categories":[],"readme":"# Build Your Own Atomic Host\nAutomation of Building your own [Atomic-Host](http://www.projectatomic.io/).\nTo know about Atomic-Host, please visit [http://www.projectatomic.io](http://www.projectatomic.io/).\n\n# Steps\n\n## Clone Source\n```\n$ git clone https://github.com/trishnaguha/build-atomic-host.git\n$ cd build-atomic-host\n```\n\n## Install Ansible\nPlease Make sure Ansible is intalled in your system.\n```\n$ sudo dnf install ansible   # Install python2-dnf if you are using Fedora Linux Distribution\n```\n\n## Download Atomic QCOW2 Image\nDownload Fedora Atomic QCOW2 Image: [https://getfedora.org/en/atomic](https://getfedora.org/en/atomic/download/).\nYou can also download CentOS Atomic QCOW2 Image.\n\n\n## SetUp Environment\nInstall Requirements - Start HTTP Server. After running the following playbook you may use `ip addr` to check the IP Address of your HTTP server.\n```\n$ ansible-playbook setup.yml --ask-sudo-pass\n```\n\n\n## Variables\n**Replace the Variables in `vars/atomic.yml` with your httpserver IP Address, OSTree name, Basehost.**\n\n**If you wish to use CentOS Atomic modify the variables accordingly.**\n\n```\n---\n# Variables for Atomic host\natomicname: my-atomic\nbasehost: fedora-atomic/25/x86_64/docker-host\nhttpserver: 192.168.122.1\n```\n\n\n**Add the additional Packages you would like to have in the OSTree in `vars/buildrepo.yml`.**\n\n**If you wish to use CentOS Atomic modify the variables accordingly.**\n\n```\n---\n# Variables for Atomic repository/OSTree packages\nrepo: https://pagure.io/fedora-atomic.git\nbranch: f25\nrepodir: fedora-atomic\nabs_path: /workspace                                  # The absolute path to the git repo.\ncustommanifest: customized-atomic-docker-host.json    # The manifest that goes into the custom host(ostree) content that we are going to build.\nsourcemanifest: fedora-atomic-docker-host.json        # The manifest that goes into the actual Base Fedora host(ostree) content.\npackages: '\"vim-enhanced\", \"git\"'                     # Packages you want to have in your Atomic host.\n```\nYou can add packages like above in double-qoutes separated by comma.\n\n\n**Replace Variables for Creating VM from QCOW2 Image.**\n**If you wish to use CentOS Atomic modify the variables accordingly.**\n\n```\t\n# Variables for Creating VM\n\ndomain: atomic-node\nimage: Fedora-Atomic-25-20170228.0.x86_64\ncpu: 1\nmem: 1536\nos:\n  variant: fedora23\npath: /tmp\n```\n\n\n## Main Playbook\nRun the main Playbook which will create VM from QCOW2 image, compose OSTree and perform SSH-Setup and Rebase on OSTree:\n```\n$ ansible-playbook main.yml --ask-sudo-pass\n```\n**`user-name: atomic-user, password: atomic` for the instance.**\n\n\n## Reboot the Host\nNow SSH to the Atomic Host and Perform a Reboot which will reboot in to your OSTree:\n```\n$ sudo systemctl reboot\n```\n\n\n## Verify: SSH to the Atomic Host:\n\n```\n$ ssh atomic-user@192.168.122.221\n[atomic-user@atomic-node ~]$ sudo rpm-ostree status\nState: idle\nDeployments:\n● my-atomic:fedora-atomic/25/x86_64/docker-host\n       Version: 25.1 (2017-02-07 05:34:46)\n        Commit: 15b70198b8ec7fd54271f9672578544ff03d1f61df8d7f0fa262ff7519438eb6\n        OSName: fedora-atomic\n\n  fedora-atomic:fedora-atomic/25/x86_64/docker-host\n       Version: 25.51 (2017-01-30 20:09:59)\n        Commit: f294635a1dc62d9ae52151a5fa897085cac8eaa601c52e9a4bc376e9ecee11dd\n        OSName: fedora-atomic\n```\n\n\n## Shout-Out for the following folks:\n\n* [Gerard Braad](https://gbraad.nl) who mentored me for the project.\n* [Jonathan Lebon](https://github.com/jlebon) who demonstrated Building Atomic host workshop in DevConf.CZ, 2017 at Brno. His slides are here: [jlebon-devconf-slides](http://jlebon.com/devconf/slides.pdf).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrishnaguha%2Fbuild-atomic-host","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrishnaguha%2Fbuild-atomic-host","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrishnaguha%2Fbuild-atomic-host/lists"}