Compare commits

..

4 Commits

Author SHA1 Message Date
5a5715f7a3
fix password setting
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-03-30 20:23:42 +02:00
a7051f1cb8
Added full name / Support for libreschool-pxeserver
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-03-30 17:42:10 +02:00
04b0d740c6
version bump
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2020-03-08 20:58:16 +01:00
498037625a
fix wrong db definition - fix uninstall - fix when variable undefined 2020-03-08 20:56:46 +01:00
9 changed files with 49 additions and 11 deletions

View File

@ -16,7 +16,7 @@ You can set a password and an ssh key.
Set the username (this is the default):
```bash
# db configuration setprop ansibleusers username libreschool
# db configuration setprop adminusers username libreschool
```
The default password is **"LibreSchool,1234"**.
@ -28,13 +28,13 @@ Set the password (must be hashed, see [here](https://docs.ansible.com/ansible/la
localhost | SUCCESS => {
"msg": "$6$S8BJ2Bbc26fRtExf$hNjphQ2HhbeiKLhPOdHttx6vWZwB90KgeinpREGrgcOHW2qYxf9s/csC7LFoENskhzwXK0wcWV3X9rPTC57Vu."
}
# db configuration setprop ansibleusers password '$6$S8BJ2Bbc26fRtExf$hNjphQ2HhbeiKLhPOdHttx6vWZwB90KgeinpREGrgcOHW2qYxf9s/csC7LFoENskhzwXK0wcWV3X9rPTC57Vu.'
# db configuration setprop adminusers password '$6$S8BJ2Bbc26fRtExf$hNjphQ2HhbeiKLhPOdHttx6vWZwB90KgeinpREGrgcOHW2qYxf9s/csC7LFoENskhzwXK0wcWV3X9rPTC57Vu.'
```
Set an ssh key:
```bash
# db configuration setprop ansibleusers sshkey "$(cat ~/.ssh/id_rsa.pub)"
# db configuration setprop adminusers sshkey "$(cat ~/.ssh/id_rsa.pub)"
```
## TODO / ideas ##

View File

@ -1,6 +1,6 @@
Summary: LibreSchool Client Local Admin Users
Name: libreschool-adminusers
Version: 1.0.0
Version: 1.0.3
Release: 1.ns7
License: GPL
BuildArch: noarch
@ -34,7 +34,9 @@ echo "%doc COPYING" >> %{name}-%{version}-%{release}
%defattr(-,root,root)
%post
/etc/e-smith/events/actions/initialize-default-databases
/sbin/e-smith/expand-template /etc/ansible/reconfigure_clients.yml
/sbin/e-smith/expand-template /srv/ipxe/default_preseed.txt
%postun
#if [ "$1" = 1 ]; then
@ -42,9 +44,21 @@ echo "%doc COPYING" >> %{name}-%{version}-%{release}
#fi
if [ "$1" = 0 ]; then
#uninstallation
/sbin/e-smith/db configuration delete adminusers
/sbin/e-smith/expand-template /etc/ansible/reconfigure_clients.yml
/sbin/e-smith/expand-template /srv/ipxe/default_preseed.txt
fi
%changelog
* Mon Mar 30 2020 Paolo Asperti <paolo@asperti.com> - 1.0.3-1.ns7
- Fix password setting
* Mon Mar 30 2020 Paolo Asperti <paolo@asperti.com> - 1.0.2-1.ns7
- Added full name
- Support for libreschool-pxeserver
* Sun Mar 8 2020 Paolo Asperti <paolo@asperti.com> - 1.0.1-1.ns7
- First round of fixes
* Sun Mar 8 2020 Paolo Asperti <paolo@asperti.com> - 1.0.0-1.ns7
- First release

View File

@ -2,20 +2,21 @@
- name: Create Admin user
user:
name: "{{ esmith.ansibleusers.username }}"
name: "{{ esmith.adminusers.username }}"
groups: adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare
comment: "{{ esmith.adminusers.fullname }}"
append: yes
state: present
- name: Set Admin password
user:
name: "{{ esmith.ansibleusers.username }}"
password: "{{ esmith.ansibleusers.password }}"
when: esmith.ansibleusers.password != ""
name: "{{ esmith.adminusers.username }}"
password: "{{ esmith.adminusers.password }}"
when: (esmith.adminusers.password is defined) and (esmith.adminusers.password|length > 0)
- name: Set authorized_key
authorized_key:
user: "{{ esmith.ansibleusers.username }}"
user: "{{ esmith.adminusers.username }}"
state: present
key: "{{ esmith.ansibleusers.sshkey }}"
when: esmith.ansibleusers.sshkey != ""
key: "{{ esmith.adminusers.sshkey }}"
when: (esmith.adminusers.sshkey is defined) and (esmith.adminusers.sshkey|length > 0)

View File

@ -0,0 +1 @@
LibreSchool Administrator

View File

@ -0,0 +1,22 @@
#
# 20DefaultUserOverride
#
# This overrides the default admin user of a fresh installation
{
$userfullname = ${'adminusers'}{fullname} || 'LibreSchool Administrator';
$username = ${'adminusers'}{username} || 'libreschool';
$password = ${'adminusers'}{password} || '';
if ( $password ne '' ) {
$OUT .= <<EOF
d-i passwd/user-fullname string $userfullname
d-i passwd/username string $username
d-i passwd/user-password-crypted password $password
d-i user-setup/allow-password-weak boolean true
EOF
} else {
$OUT .= "";
}
}