61 lines
2.3 KiB
Markdown
61 lines
2.3 KiB
Markdown
# Installation on existing client
|
|
|
|
A straightforward way to test the lmn-client is to manually run the playbook on a freshly installed client.
|
|
|
|
This can be done in the following ways:
|
|
|
|
On the client using ansible-pull
|
|
On the client by checking out the lmn-client repository and running the playbook locally
|
|
On a target device by checking out the lmn-client repository locally and executing the playbook against the target device
|
|
|
|
## Direct call via ansible-pull
|
|
|
|
With two simple commands you can install the lmn-client with default configuration.
|
|
|
|
Steps:
|
|
|
|
* Install debian on client (via USB or PXE)
|
|
* Install additional packages: ansible
|
|
`sudo apt install ansible`
|
|
* Run Playbook
|
|
`sudo ansible-pull --verbose -i inventory-sample.yml -l localhost --url=https://codeberg.org/DigitalSouveraeneSchule/lmn-client.git -C main lmn-client.yml`
|
|
|
|
## Checkout git and run ansible locally
|
|
|
|
When checking out the repository you can customize the installation by editing the inventory before run the playbook.
|
|
You can repeat the process as often as you like and gradually adapt your inventory settings to your needs.
|
|
|
|
Steps:
|
|
|
|
* Install debian on client (via USB or PXE)
|
|
* Install additional packages: ansible, git
|
|
`sudo apt install ansible git`
|
|
* Checkout Repository
|
|
`git clone https://codeberg.org/DigitalSouveraeneSchule/lmn-client.git`
|
|
* Change into repository directory
|
|
`cd lmn-client`
|
|
* Create inventory
|
|
`cp inventory-sample.yml inventory-myschool.yml`
|
|
* Edit inventory-myschool.yml
|
|
e.g.: `nano inventory-myschool.yml`
|
|
* Run Playbook
|
|
`ansible-playbook -i inventory-myschool.yml -l localhost lmn-client.yml`
|
|
|
|
## Run with other target device
|
|
|
|
If you want to run the play on an other target pc:
|
|
|
|
* You have to add the target IP or hostname in the inventory.
|
|
* SSH access on target must be configured (deploy ssh public-key on target host)
|
|
|
|
`ansible-playbook -i inventory-myschool.yml -l target lmn-client.yml`
|
|
|
|
## Upload changes to your own remote repository
|
|
|
|
If you are satisfied with your changes, you can upload the changes to your own remote repository.
|
|
|
|
* Create new git repository on your git service (e.g. https://codeberg.org)
|
|
* Add new remote origin
|
|
`git remote add myorigin git@codeberg.org:myname/mylmn-client.git`
|
|
* Push the repository to the new remote
|
|
`push -u myorigin main`
|