This repository contains automation code to set up a rollyourown control node.
This project uses Ansible to deploy the software and configuration needed for a rollyourown control node.
A detailed description of how to use a rollyourown project to deploy and maintain an open source solution can be found on the rollyourown website.
To deploy a control node:
-
Install Ubuntu 22.04 LTS on a computer or virtual machine
-
Log in as a non-root user, upgrade the system and then reboot to apply any system changes
sudo apt update && sudo apt upgrade -y sudo reboot -n
-
Log back in as the non-root user and install
ansible
,ansible-core
,python3-packaging
,python3-distutils
,git
andnano
:sudo apt install software-properties-common sudo apt-add-repository --yes --update ppa:ansible/ansible sudo apt install ansible ansible-core python3-packaging python3-distutils git nano -y
-
Log in as the non-root user, create and enter a working directory, and clone this repository from Codeberg or GitHub:
git clone https://codeberg.org/rollyourown-xyz/ryo-control-node
or
git clone https://github.com/rollyourown-xyz/ryo-control-node
-
Enter the
ryo-control-node
directory, copy the fileconfiguration/configuration_TEMPLATE.yml
to a new fileconfiguration/configuration.yml
cd ryo-control-node cp configuration/configuration_TEMPLATE.yml configuration/configuration.yml
-
Edit the new file
configuration.yml
and add the non-root username and password. If you aren't already familiar with a different linux editor, use nano to edit the file:nano configuration/configuration.yml
-
Run the control node setup automation script
local-setup.sh
from theryo-control-node
directory to prepare the control node for deploying rollyourown projects:./local-setup.sh
-
After running the local-setup script, reboot the control node
Now proceed and deploy rollyourown projects.
We would be delighted if you would like to contribute to rollyourown and there are a number of ways you can collaborate on this project:
- Raising security-related issues
- Contributing bug reports, feature requests and ideas
- Improving the project - e.g. to provide fixes or enhancements
You may also like to contribute to the wider rollyourown project by, for example:
- Contributing a new project or module
- Contributing to the rollyourown website content or design
- Maintaining a rollyourown repository
Issues for this project can be submitted on Codeberg (preferred) or GitHub:
If you have found a security vulnerability in any rollyourown service or any of the rollyourown projects, modules or other repositories, please read our security disclosure policy and report this via our security vulnerability report form.
For public contributions, we maintain mirror repositories of this project on Codeberg and GitHub:
- https://codeberg.org/rollyourown-xyz/ryo-control-node
- https://github.com/rollyourown-xyz/ryo-control-node
Our preferred collaboration space is Codeberg:
The primary repository for this project is hosted on our own Git repository server at:
Repositories on our own Git server are accessible only to members of our organisation.
For information on copyright, licences and trademarks, see https://rollyourown.xyz/about/copyright_licenses_trademarks/.