* project: update all dependencies including ansible Upgrade to ansible 7.x and ansible-core 2.14.x. There seems to be issue with ansible 8/ansible-core 2.15 so we remain on those versions for now. It's quite a big bump already anyway. Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * tests: install aws galaxy collection Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * ansible-lint: disable various rules after ansible upgrade Temporarily disable a bunch of linting action following ansible upgrade. Those should be taken care of separately. Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve deprecated-module ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve no-free-form ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[meta] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[playbook] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve schema[tasks] ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve risky-file-permissions ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve risky-shell-pipe ansible-lint error Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: remove deprecated warn args Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: use fqcn for non builtin tasks Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: resolve syntax-check[missing-file] for contrib playbook Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> * project: use arithmetic inside jinja to fix ansible 6 upgrade Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch> --------- Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@proton.ch>
47 lines
1.3 KiB
Plaintext
47 lines
1.3 KiB
Plaintext
# use virtualenv to install all python requirements
|
|
VENVDIR=venv
|
|
python3 -m venv $VENVDIR
|
|
source $VENVDIR/bin/activate
|
|
pip install --upgrade pip
|
|
pip install wheel
|
|
pip install --upgrade setuptools
|
|
pip install -r requirements.txt
|
|
pip install -r tests/requirements.txt
|
|
ansible-galaxy install -r tests/requirements.yml
|
|
pre-commit install
|
|
# prepare an inventory to test with
|
|
INV=inventory/lab
|
|
rm -rf ${INV}.bak &> /dev/null
|
|
mv ${INV} ${INV}.bak &> /dev/null
|
|
cp -a inventory/sample ${INV}
|
|
rm -f ${INV}/hosts.ini
|
|
|
|
# customize the vagrant environment
|
|
mkdir vagrant
|
|
cat << EOF > vagrant/config.rb
|
|
\$instance_name_prefix = kub"
|
|
\$vm_cpus = 2
|
|
\$num_instances = 3
|
|
\$os = "almalinux8"
|
|
\$subnet = "192.168.56"
|
|
\$network_plugin = "calico"
|
|
\$inventory = "$INV"
|
|
\$shared_folders = { 'temp/docker_rpms' => "/var/cache/yum/x86_64/7/docker-ce/packages" }
|
|
EOF
|
|
|
|
# make the rpm cache
|
|
mkdir -p temp/docker_rpms
|
|
|
|
vagrant up
|
|
|
|
# make a copy of the downloaded docker rpm, to speed up the next provisioning run
|
|
scp kub-1:/var/cache/yum/x86_64/7/docker-ce/packages/* temp/docker_rpms/
|
|
|
|
# copy kubectl access configuration in place
|
|
mkdir $HOME/.kube/ &> /dev/null
|
|
ln -s $PWD/$INV/artifacts/admin.conf $HOME/.kube/config
|
|
# make the kubectl binary available
|
|
sudo ln -s $PWD/$INV/artifacts/kubectl /usr/local/bin/kubectl
|
|
#or
|
|
export PATH=$PATH:$PWD/$INV/artifacts
|