changed README.md
This commit is contained in:
@@ -2,9 +2,21 @@
|
|||||||
|
|
||||||
This repository is my main repository for Ansible Pull.
|
This repository is my main repository for Ansible Pull.
|
||||||
|
|
||||||
|
## Supported Distributions
|
||||||
|
|
||||||
|
The bootstrap script automatically detects the operating system using `/etc/os-release` and selects the appropriate package manager and Ansible playbook.
|
||||||
|
|
||||||
|
| Distribution | Package Manager | Playbook |
|
||||||
|
|---|---|---|
|
||||||
|
| Ubuntu | APT | `local.yml` |
|
||||||
|
| Debian | APT | `local.yml` |
|
||||||
|
| Arch-based distributions (including CachyOS) | Pacman | `arch.yml` |
|
||||||
|
|
||||||
## New Server Bootstrap
|
## New Server Bootstrap
|
||||||
|
|
||||||
For a new Ubuntu server, log in as `root` and download the bootstrap script directly from Gitea:
|
For a new server or workstation, log in as `root` or use an account with sudo privileges.
|
||||||
|
|
||||||
|
Download the bootstrap script directly from Gitea:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
wget -O /tmp/bootstrap.sh https://gitea.romerozone.top/robert/ansible_pull_master/raw/branch/master/bootstrap.sh
|
wget -O /tmp/bootstrap.sh https://gitea.romerozone.top/robert/ansible_pull_master/raw/branch/master/bootstrap.sh
|
||||||
@@ -22,15 +34,50 @@ Run the bootstrap:
|
|||||||
/tmp/bootstrap.sh
|
/tmp/bootstrap.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
The bootstrap script will:
|
If running from a normal user account, use:
|
||||||
|
|
||||||
1. Install Git and Ansible.
|
```bash
|
||||||
2. Prompt for the Ansible Vault password.
|
sudo /tmp/bootstrap.sh
|
||||||
3. Store the Vault password securely in `/root/.ansible_vault_password`.
|
```
|
||||||
4. Configure Ansible to use the Vault password.
|
|
||||||
5. Run the initial `ansible-pull`.
|
|
||||||
6. Retrieve the repository and apply the server configuration.
|
|
||||||
|
|
||||||
After the initial pull completes, the server is managed by this Ansible Pull repository.
|
### What the Bootstrap Does
|
||||||
|
|
||||||
The Ansible playbook creates the `Default` user and other required configuration, so no normal user account is required before running the bootstrap.
|
The bootstrap script:
|
||||||
|
|
||||||
|
1. Detects the operating system.
|
||||||
|
2. Installs Git and Ansible using the appropriate package manager.
|
||||||
|
3. Selects the corresponding Ansible playbook.
|
||||||
|
4. Runs the initial `ansible-pull`.
|
||||||
|
5. Retrieves the repository and applies the system configuration.
|
||||||
|
|
||||||
|
### Ubuntu and Debian
|
||||||
|
|
||||||
|
For Ubuntu and Debian systems, the bootstrap additionally:
|
||||||
|
|
||||||
|
1. Prompts for the Ansible Vault password.
|
||||||
|
2. Stores the password securely in `/root/.ansible_vault_password`.
|
||||||
|
3. Configures Ansible to use the Vault password.
|
||||||
|
4. Runs `local.yml`.
|
||||||
|
|
||||||
|
### Arch-Based Distributions
|
||||||
|
|
||||||
|
For Arch-based distributions, the bootstrap:
|
||||||
|
|
||||||
|
1. Performs a full system update using Pacman.
|
||||||
|
2. Installs Git and Ansible.
|
||||||
|
3. Runs `arch.yml`.
|
||||||
|
|
||||||
|
No Ansible Vault password is required for the Arch playbook.
|
||||||
|
|
||||||
|
## After Bootstrap
|
||||||
|
|
||||||
|
After the initial pull completes, the system is configured and managed by this Ansible Pull repository.
|
||||||
|
|
||||||
|
The Ubuntu/Debian playbook creates the **Default User** when needed, along with the Ansible service account and other required configuration.
|
||||||
|
|
||||||
|
The Arch-based playbook configures Fastfetch and ensures it starts in interactive Bash.
|
||||||
|
|
||||||
|
## Playbooks
|
||||||
|
|
||||||
|
- `local.yml` — Ubuntu and Debian server configuration.
|
||||||
|
- `arch.yml` — Arch-based workstation configuration.
|
||||||
|
|||||||
Reference in New Issue
Block a user