changed README.md
This commit is contained in:
@@ -2,9 +2,21 @@
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
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
|
||||
```
|
||||
|
||||
The bootstrap script will:
|
||||
If running from a normal user account, use:
|
||||
|
||||
1. Install Git and Ansible.
|
||||
2. Prompt for the Ansible Vault password.
|
||||
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.
|
||||
```bash
|
||||
sudo /tmp/bootstrap.sh
|
||||
```
|
||||
|
||||
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