// SPDX-FileCopyrightText: Florian Wilhelm // SPDX-License-Identifier: MIT
= system-automation :experimental: yes ifdef::env-github[] :status: :outfilesuffix: .adoc :!toc-title: :caution-caption: :fire: :important-caption: :exclamation: :note-caption: :paperclip: :tip-caption: :bulb: :warning-caption: :warning: endif::[]
image::https://github.com/fwilhe2/system-automation/workflows/CI/badge.svg[CI Job] image::https://api.reuse.software/badge/github.com/fwilhe2/system-automation[REUSE status]
https://api.reuse.software/info/github.com/fwilhe2/system-automation[REUSE status]
System Automation powered by Ansible™
== Project Layout
This project contains multiple playbooks:
epel.yml
: Helper to add the Extra Packages for Enterprise Linux reposcommon.yml
: Software and setup which does not require a graphical environmentminimal.yml
: Subset of the common playbook to get a nice cli environment without too many packagesdesktop.yml
: Setup for desktop computersvm-host.yml
: Skips development tools, ment for hosts running https://github.com/fwilhe2/dev[dev]dev-env.yml
: Skips virtualization tools, ment for guests running https://github.com/fwilhe2/dev[dev]== Preparation
== Kickstart (experimental)
If you don't mind the curl | bash
thing, you might try running the playbook directly via:
curl https://raw.githubusercontent.com/fwilhe2/system-automation/main/bootstrap.sh | bash
This requires ansible
, curl
, bash
and unzip
.
== Setup (traditional)
common
playbookdesktop
playbook== Testing
=== Containerfile
Containerfiles are available for testing. They are run automatically via the CI workflow.
For running them locally, use:
=== Lima
https://github.com/lima-vm/lima[Lima] is a tool written in go for running virtual machines.
Files in the root of this repo named like lima_*.yaml
contain vm definitions for testing this repo.
export SYSAUTO_LIMA_DISTRO=debian export SYSAUTO_LIMA_DISTRO=fedora limactl create --name=system-automation-$SYSAUTO_LIMADISTRO ./lima$SYSAUTO_LIMA_DISTRO.yaml limactl start system-automation-$SYSAUTO_LIMA_DISTRO limactl shell system-automation-$SYSAUTO_LIMA_DISTRO
./run.sh
== License
Copyright © 2016-2023 Florian Wilhelm
Free use of this software is granted under the terms of the MIT License.
=== Copyright Notice
This project ships the following 3rd party software:
https://github.com/green-leader/ansible-role-codium[ansible-role-codium] (roles/greenleader.codium
)::
Copyright © Sion Fandrick under the MIT License
https://github.com/iesplin/ansible-role-vscode[ansible-role-vscode] (roles/iesplin.vscode
)::
Copyright © iesplin under the MIT License
https://github.com/gantsign/ansible-role-visual-studio-code-extensions[ansible-role-visual-studio-code-extensions] (library/codium-extensions
)::
Copyright © John Freeman GantSign Ltd. Company No. 06109112 (registered in England) under the MIT License
https://git.sr.ht/~gotmax23/ansible-collection-epel[Ansible collection - gotmax23.epel] (roles/gotmax23.epel*
)::
Copyright © 2022 Maxwell G (@gotmax23) under the MIT License
https://github.com/lima-vm/lima[lima - linux virtual machines] (lima_*yaml
)::
Based on examples by Akihiro Suda and https://github.com/lima-vm/lima/graphs/contributors[the lima contributors] under the Apache-2.0 license
== References