You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
ansgarz 3dff3c1631 v0.8.33-SNAPSHOT - upd deps, fix fatJar Main class 2 years ago
.idea-configs package refactoring 3 years ago
docs v0.8.32 simplify cli 2 years ago
gradle/wrapper v0.8.33-SNAPSHOT - upd deps, fix fatJar Main class 2 years ago
src v0.8.33-SNAPSHOT - upd deps, fix fatJar Main class 2 years ago
.gitignore Introduce DDD & add terraform installation 3 years ago
.gitlab-ci.yml v0.8.28 fix ci for release 2 years ago
Dockerfile add Dockerfile 3 years ago
LICENSE update README.md 3 years ago
README.md v0.8.30 add sequence diagram to README.md 2 years ago
build.gradle v0.8.33-SNAPSHOT - upd deps, fix fatJar Main class 2 years ago
gradle.properties run container tests in ci 3 years ago
gradlew initial commit 3 years ago
gradlew.bat initial commit 3 years ago
install-provs.sh [skip ci] add install script 2 years ago
settings.gradle correct maven name to provs 3 years ago

README.md

Provs framework

Provs is a framework for automating tasks for provisioning reasons and other purposes.

It combines

  • being able to use the power of shell commands
  • a clear and detailed result summary of the built-in execution handling (incl. failure handling and reporting)
  • the convenience and robustness of a modern programming language

Write once, run everywhere

Tasks can be run

  • locally
  • remotely
  • in a local docker container
  • in a remote container

Additionally, it is possible to define a custom processor if needed.

Usage

Prerequisites

Show usage options

java -jar provs.jar -h

Provision a desktop workplace locally

Ensure a config file is in place (default config file name is "WorkplaceConfig.yaml") with at least the workplace type specified, e.g. type: MINIMAL

Possible types are currently: MINIMAL, OFFICE or IDE.

Run:

java -jar provs.jar -l

Provision a desktop workplace remotely

java -jar provs.jar -i -r <ip> -u <remote_username>

You'll be prompted for the password of the remote user.

Install k3s

java -jar provs-server.jar -i -r <ip or hostname> -u <remote_username>
# Example:
java -jar provs-server.jar -i -r 192.168.56.141 -u testuser

You'll be prompted for the password of the remote user.

For developers

Build the jar-file yourself

  • Clone this repo
  • Build the fatjar file by ./gradlew fatJarLatest
  • In folder build/libs you'll find the file provs.jar

The fatjar is a Java jar-file incl. all required dependencies.

Sequence diagram

Find below an example of a sequence diagram when provisioning a workplace:

img.png