v0.8.14-SNAPSHOT rename packages to org.domaindrivenarchitecture

This commit is contained in:
az 2021-08-07 18:52:39 +02:00
parent a6f2186946
commit 3810fe6723
103 changed files with 531 additions and 532 deletions

View file

@ -14,12 +14,11 @@ apply plugin: 'org.jetbrains.kotlin.jvm'
apply plugin: 'java-library'
apply plugin: 'java-test-fixtures'
apply plugin: 'maven-publish'
//apply plugin: 'kotlin'
apply plugin: 'kotlinx-serialization'
group = 'io.provs'
version = '0.8.13'
version = '0.8.14-SNAPSHOT'
repositories {
mavenCentral()

View file

@ -1,14 +0,0 @@
package io.provs.ubuntu.extensions.demos
import io.provs.core.Prov
import io.provs.core.local
fun Prov.helloWorld() = def {
cmd("echo Hello world!")
}
fun main() {
local().helloWorld()
}

View file

@ -1,18 +0,0 @@
package io.provs.ubuntu.extensions.server_compounds.monitoring
import io.provs.core.Prov
import io.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import io.provs.ubuntu.extensions.server_software.nginx.base.nginxHttpConf
import io.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import io.provs.ubuntu.extensions.server_software.prometheus.base.configurePrometheusDocker
import io.provs.ubuntu.extensions.server_software.prometheus.base.runPrometheusDocker
@Suppress("unused") // used externally
fun Prov.provisionMonitoring() = requireAll {
configurePrometheusDocker()
runPrometheusDocker()
provisionNginxStandAlone(NginxConf.nginxHttpConf())
}

View file

@ -1,20 +0,0 @@
package io.provs.ubuntu.extensions.server_compounds.monitoring
import io.provs.core.Prov
import io.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import io.provs.ubuntu.extensions.server_software.nginx.base.nginxAddLocation
import io.provs.ubuntu.extensions.server_software.nginx.base.nginxCreateSelfSignedCertificate
import io.provs.ubuntu.extensions.server_software.nginx.base.nginxHttpsConfWithLocationFiles
import io.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import io.provs.ubuntu.extensions.server_software.prometheus.base.prometheusNginxConfig
import io.provs.ubuntu.extensions.server_software.prometheus.provisionPrometheusDocker
@Suppress("unused") // used externally
fun Prov.provisionNginxMonitoring(nginxHost: String = "localhost") = def {
provisionPrometheusDocker(nginxHost)
nginxCreateSelfSignedCertificate()
provisionNginxStandAlone(NginxConf.nginxHttpsConfWithLocationFiles())
nginxAddLocation("443", nginxHost, "/prometheus", prometheusNginxConfig)
}

View file

@ -1,12 +0,0 @@
package io.provs.ubuntu.extensions.server_software.nginx.base
import io.provs.core.Prov
import io.provs.core.Secret
import io.provs.ubuntu.install.base.aptInstall
fun Prov.nginxAddBasicAuth(user: String, password: Secret) = requireAll {
aptInstall("apache2-utils")
val passwordFile = "/etc/nginx/.htpasswd"
cmdNoLog("sudo htpasswd -b -c $passwordFile $user ${password.plain()}")
}

View file

@ -1,12 +0,0 @@
package io.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.ubuntu.install.base.aptInstall
fun Prov.installDocker() = def {
aptInstall("containerd docker.io")
if (!chk("getent group docker")) {
cmd("sudo groupadd docker")
}
cmd("sudo gpasswd -a \$USER docker")
}

View file

@ -1,10 +0,0 @@
package io.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.ubuntu.filesystem.base.addTextToFile
import java.io.File
fun Prov.configureNoSwappiness() = def {
// set swappiness to 0
addTextToFile("vm.swappiness=0", File("/etc/sysctl.conf"), sudo = true)
}

View file

@ -1,17 +0,0 @@
package io.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.install.base.aptInstallFromPpa
import io.provs.ubuntu.install.base.isPackageInstalled
fun Prov.installZimWiki() = def {
if (isPackageInstalled("zim")) {
ProvResult(true, out = "zim already installed.")
} else {
aptInstallFromPpa("jaap.karssenberg", "zim", "zim")
aptInstall("python3-gtkspellcheck")
}
}

View file

@ -1,10 +1,10 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
import io.provs.core.platforms.SHELL
import io.provs.core.platforms.UbuntuProv
import io.provs.core.platforms.WinProv
import io.provs.core.processors.LocalProcessor
import io.provs.core.processors.Processor
import org.domaindrivenarchitecture.provs.core.platforms.SHELL
import org.domaindrivenarchitecture.provs.core.platforms.UbuntuProv
import org.domaindrivenarchitecture.provs.core.platforms.WinProv
import org.domaindrivenarchitecture.provs.core.processors.LocalProcessor
import org.domaindrivenarchitecture.provs.core.processors.Processor
import org.slf4j.LoggerFactory

View file

@ -1,4 +1,4 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
data class ProvResult(val success: Boolean,

View file

@ -1,4 +1,4 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
open class Secret(private val value: String) {

View file

@ -1,10 +1,10 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
import io.provs.core.docker.provideContainer
import io.provs.core.processors.ContainerStartMode
import io.provs.core.processors.ContainerUbuntuHostProcessor
import io.provs.core.processors.RemoteProcessor
import io.provs.core.tags.Api
import org.domaindrivenarchitecture.provs.core.docker.provideContainer
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.core.processors.ContainerUbuntuHostProcessor
import org.domaindrivenarchitecture.provs.core.processors.RemoteProcessor
import org.domaindrivenarchitecture.provs.core.tags.Api
import java.io.File
import java.net.InetAddress

View file

@ -1,11 +1,11 @@
package io.provs.core.docker
package org.domaindrivenarchitecture.provs.core.docker
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.docker.dockerimages.DockerImage
import io.provs.core.docker.platforms.*
import io.provs.core.platforms.UbuntuProv
import io.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.docker.dockerimages.DockerImage
import org.domaindrivenarchitecture.provs.core.docker.platforms.*
import org.domaindrivenarchitecture.provs.core.platforms.UbuntuProv
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
/**
* Builds a docker image if not yet existing.

View file

@ -1,4 +1,4 @@
package io.provs.core.docker.dockerimages
package org.domaindrivenarchitecture.provs.core.docker.dockerimages
interface DockerImage {

View file

@ -1,15 +1,15 @@
package io.provs.core.docker.platforms
package org.domaindrivenarchitecture.provs.core.docker.platforms
import io.provs.core.ProvResult
import io.provs.core.docker.containerRuns
import io.provs.core.docker.dockerImageExists
import io.provs.core.docker.exitAndRmContainer
import io.provs.core.docker.dockerimages.DockerImage
import io.provs.core.escapeSingleQuote
import io.provs.core.fileSeparator
import io.provs.core.hostUserHome
import io.provs.core.platforms.UbuntuProv
import io.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.docker.containerRuns
import org.domaindrivenarchitecture.provs.core.docker.dockerImageExists
import org.domaindrivenarchitecture.provs.core.docker.exitAndRmContainer
import org.domaindrivenarchitecture.provs.core.docker.dockerimages.DockerImage
import org.domaindrivenarchitecture.provs.core.escapeSingleQuote
import org.domaindrivenarchitecture.provs.core.fileSeparator
import org.domaindrivenarchitecture.provs.core.hostUserHome
import org.domaindrivenarchitecture.provs.core.platforms.UbuntuProv
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
fun UbuntuProv.provideContainerPlatform(

View file

@ -1,4 +1,4 @@
package io.provs.core.entry
package org.domaindrivenarchitecture.provs.core.entry
/**
* Calls a static method of a class.

View file

@ -1,11 +1,11 @@
package io.provs.core.platforms
package org.domaindrivenarchitecture.provs.core.platforms
import io.provs.core.ProgressType
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.escapeAndEncloseByDoubleQuoteForShell
import io.provs.core.processors.LocalProcessor
import io.provs.core.processors.Processor
import org.domaindrivenarchitecture.provs.core.ProgressType
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.escapeAndEncloseByDoubleQuoteForShell
import org.domaindrivenarchitecture.provs.core.processors.LocalProcessor
import org.domaindrivenarchitecture.provs.core.processors.Processor
const val SHELL = "/bin/bash"

View file

@ -1,10 +1,10 @@
package io.provs.core.platforms
package org.domaindrivenarchitecture.provs.core.platforms
import io.provs.core.ProgressType
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.processors.LocalProcessor
import io.provs.core.processors.Processor
import org.domaindrivenarchitecture.provs.core.ProgressType
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.processors.LocalProcessor
import org.domaindrivenarchitecture.provs.core.processors.Processor
class WinProv internal constructor(processor : Processor = LocalProcessor(), name: String? = null, progressType: ProgressType)

View file

@ -1,11 +1,11 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.ProgressType
import io.provs.core.Prov
import io.provs.core.docker.provideContainer
import io.provs.core.escapeAndEncloseByDoubleQuoteForShell
import io.provs.core.platforms.SHELL
import io.provs.core.tags.Api
import org.domaindrivenarchitecture.provs.core.ProgressType
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.docker.provideContainer
import org.domaindrivenarchitecture.provs.core.escapeAndEncloseByDoubleQuoteForShell
import org.domaindrivenarchitecture.provs.core.platforms.SHELL
import org.domaindrivenarchitecture.provs.core.tags.Api
enum class ContainerStartMode {
USE_RUNNING_ELSE_CREATE,

View file

@ -1,6 +1,6 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.escapeNewline
import org.domaindrivenarchitecture.provs.core.escapeNewline
import org.slf4j.LoggerFactory
import java.io.File
import java.io.IOException

View file

@ -1,4 +1,4 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
@Suppress("unused") // used externally

View file

@ -1,4 +1,4 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
interface Processor {

View file

@ -1,9 +1,9 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.Secret
import io.provs.core.escapeAndEncloseByDoubleQuoteForShell
import io.provs.core.escapeNewline
import io.provs.core.platforms.SHELL
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.core.escapeAndEncloseByDoubleQuoteForShell
import org.domaindrivenarchitecture.provs.core.escapeNewline
import org.domaindrivenarchitecture.provs.core.platforms.SHELL
import net.schmizz.sshj.SSHClient
import net.schmizz.sshj.connection.channel.direct.Session
import net.schmizz.sshj.connection.channel.direct.Session.Command

View file

@ -1,4 +1,4 @@
package io.provs.core.tags
package org.domaindrivenarchitecture.provs.core.tags
@Target(AnnotationTarget.CLASS, AnnotationTarget.FUNCTION, AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION)
@Retention(AnnotationRetention.SOURCE)

View file

@ -0,0 +1,14 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.demos
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.local
fun Prov.helloWorld() = def {
cmd("echo Hello world!")
}
fun main() {
local().helloWorld()
}

View file

@ -1,6 +1,6 @@
package io.provs.ubuntu.extensions.demos
package org.domaindrivenarchitecture.provs.ubuntu.extensions.demos
import io.provs.core.*
import org.domaindrivenarchitecture.provs.core.*
/**

View file

@ -0,0 +1,18 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_compounds.monitoring
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.nginxHttpConf
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base.configurePrometheusDocker
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base.runPrometheusDocker
@Suppress("unused") // used externally
fun Prov.provisionMonitoring() = requireAll {
configurePrometheusDocker()
runPrometheusDocker()
provisionNginxStandAlone(NginxConf.nginxHttpConf())
}

View file

@ -0,0 +1,20 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_compounds.monitoring
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.nginxAddLocation
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.nginxCreateSelfSignedCertificate
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.nginxHttpsConfWithLocationFiles
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base.prometheusNginxConfig
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.provisionPrometheusDocker
@Suppress("unused") // used externally
fun Prov.provisionNginxMonitoring(nginxHost: String = "localhost") = def {
provisionPrometheusDocker(nginxHost)
nginxCreateSelfSignedCertificate()
provisionNginxStandAlone(NginxConf.nginxHttpsConfWithLocationFiles())
nginxAddLocation("443", nginxHost, "/prometheus", prometheusNginxConfig)
}

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.extensions.server_software.certbot
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.certbot
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.fileExists
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileExists
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
/**

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.extensions.server_software.firewall
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.firewall
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.saveIpTables() = requireAll {

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.extensions.server_software.firewall.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.firewall.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

View file

@ -1,16 +1,16 @@
package io.provs.ubuntu.extensions.server_software.nexus
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nexus
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.docker.containerRuns
import io.provs.core.remote
import io.provs.ubuntu.filesystem.base.fileExists
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.user.base.createUser
import io.provs.ubuntu.extensions.server_software.certbot.provisionCertbot
import io.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import io.provs.ubuntu.extensions.server_software.nginx.base.nginxReverseProxyHttpConfig
import io.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.docker.containerRuns
import org.domaindrivenarchitecture.provs.core.remote
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileExists
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.user.base.createUser
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.certbot.provisionCertbot
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.nginxReverseProxyHttpConfig
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
/**

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.extensions.server_software.nexus.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nexus.base
fun reverseProxyConfigHttpPort80(serverName: String): String {
// see https://help.sonatype.com/repomanager3/installation/run-behind-a-reverse-proxy

View file

@ -1,13 +1,13 @@
package io.provs.ubuntu.extensions.server_software.nginx
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.remote
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.filesystem.base.fileExists
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import io.provs.ubuntu.extensions.server_software.nginx.base.createNginxLocationFolders
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.remote
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileExists
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.NginxConf
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.createNginxLocationFolders
import kotlin.system.exitProcess

View file

@ -0,0 +1,12 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.nginxAddBasicAuth(user: String, password: Secret) = requireAll {
aptInstall("apache2-utils")
val passwordFile = "/etc/nginx/.htpasswd"
cmdNoLog("sudo htpasswd -b -c $passwordFile $user ${password.plain()}")
}

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.extensions.server_software.nginx.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base
class NginxConf(val conf: String = NGINX_MINIMAL_CONF) {
companion object {}

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.extensions.server_software.nginx.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.*
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.*
internal const val locationsAvailableDir = "/etc/nginx/locations-available/"

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.extensions.server_software.nginx.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base
import io.provs.core.Prov
import io.provs.ubuntu.filesystem.base.createDirs
import io.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDirs
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
internal val certificateName = "selfsigned"

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.extensions.server_software.prometheus
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus
import io.provs.core.Prov
import io.provs.ubuntu.extensions.server_software.prometheus.base.*
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base.*
/**
* Provisions prometheus monitoring.

View file

@ -1,12 +1,12 @@
package io.provs.ubuntu.extensions.server_software.prometheus.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base
import io.provs.core.Prov
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.filesystem.base.fileContainsText
import io.provs.ubuntu.filesystem.base.replaceTextInFile
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.user.base.whoami
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileContainsText
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.replaceTextInFile
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.user.base.whoami
internal val defaultInstallationDir = "/usr/local/bin/"

View file

@ -1,10 +1,10 @@
package io.provs.ubuntu.extensions.server_software.prometheus.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base
import io.provs.core.Prov
import io.provs.core.docker.containerRuns
import io.provs.ubuntu.filesystem.base.createDirs
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.docker.containerRuns
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDirs
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
internal val configDir = "/etc/prometheus/"

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.extensions.server_software.prometheus.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.prometheus.base
val prometheusNginxConfig = """
proxy_pass http://localhost:9090/prometheus;

View file

@ -1,19 +1,19 @@
package io.provs.ubuntu.extensions.workplace
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace
import io.provs.core.*
import io.provs.core.processors.RemoteProcessor
import io.provs.ubuntu.extensions.workplace.base.*
import io.provs.ubuntu.git.provisionGit
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.install.base.aptInstallFromPpa
import io.provs.ubuntu.install.base.aptPurge
import io.provs.ubuntu.keys.KeyPair
import io.provs.ubuntu.keys.base.gpgFingerprint
import io.provs.ubuntu.keys.provisionKeysCurrentUser
import io.provs.ubuntu.secret.secretSources.PromptSecretSource
import io.provs.ubuntu.user.base.currentUserCanSudo
import io.provs.ubuntu.user.base.makeUserSudoerWithNoSudoPasswordRequired
import io.provs.ubuntu.user.base.whoami
import org.domaindrivenarchitecture.provs.core.*
import org.domaindrivenarchitecture.provs.core.processors.RemoteProcessor
import org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base.*
import org.domaindrivenarchitecture.provs.ubuntu.git.provisionGit
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstallFromPpa
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptPurge
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.gpgFingerprint
import org.domaindrivenarchitecture.provs.ubuntu.keys.provisionKeysCurrentUser
import org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources.PromptSecretSource
import org.domaindrivenarchitecture.provs.ubuntu.user.base.currentUserCanSudo
import org.domaindrivenarchitecture.provs.ubuntu.user.base.makeUserSudoerWithNoSudoPasswordRequired
import org.domaindrivenarchitecture.provs.ubuntu.user.base.whoami
import java.net.InetAddress
import kotlin.system.exitProcess
@ -112,7 +112,7 @@ fun Prov.provisionWorkplace(
* The first argument specifies hostName or IP-Address of the remote machine,
* the second argument defines the user on the remote machine for whom the workplace is provisioned;
* You can invoke this method e.g. using the jar-file from the project root by:
* java -jar build/libs/provs-extensions-uber.jar io.provs.ubuntu.extensions.workplace.ProvisionWorkplaceKt provisionRemote <ip> <user>
* java -jar build/libs/provs-extensions-uber.jar org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.ProvisionWorkplaceKt provisionRemote <ip> <user>
* You will be prompted for the password of the remote user.
*
* @param args host and userName of the remote machine as the first resp. second argument

View file

@ -1,10 +1,10 @@
package io.provs.ubuntu.extensions.workplace
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace
import io.provs.ubuntu.keys.KeyPairSource
import io.provs.ubuntu.secret.SecretSource
import io.provs.ubuntu.secret.SecretSourceType
import io.provs.ubuntu.secret.SecretSupplier
import io.provs.ubuntu.secret.secretSources.PlainSecretSource
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPairSource
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSourceType
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSupplier
import org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources.PlainSecretSource
import kotlinx.serialization.Serializable
import kotlinx.serialization.json.Json
import java.io.*

View file

@ -0,0 +1,12 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.installDocker() = def {
aptInstall("containerd docker.io")
if (!chk("getent group docker")) {
cmd("sudo groupadd docker")
}
cmd("sudo gpasswd -a \$USER docker")
}

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.web.base.downloadFromURL
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.web.base.downloadFromURL
fun Prov.installFakturama() = def {

View file

@ -1,13 +1,13 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createDirs
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.filesystem.base.userHome
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.install.base.isPackageInstalled
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDirs
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.userHome
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.isPackageInstalled
fun Prov.installGopass(version: String = "1.12.7", enforceVersion: Boolean = false) = def {

View file

@ -1,13 +1,13 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createDirs
import io.provs.ubuntu.filesystem.base.userHome
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.install.base.isPackageInstalled
import io.provs.ubuntu.web.base.downloadFromURL
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDirs
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.userHome
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.isPackageInstalled
import org.domaindrivenarchitecture.provs.ubuntu.web.base.downloadFromURL
fun Prov.downloadGopassBridge() = def {

View file

@ -0,0 +1,10 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.addTextToFile
import java.io.File
fun Prov.configureNoSwappiness() = def {
// set swappiness to 0
addTextToFile("vm.swappiness=0", File("/etc/sysctl.conf"), sudo = true)
}

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
val OS_ANALYSIS = "lsof strace ncdu iptraf htop iotop iftop"

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.installRedshift() = def {

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.installVSC(vararg options: String) = requireAll {

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.user.base.whoami
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.user.base.whoami
fun Prov.installVirtualBoxGuestAdditions() = def {
// if running in a VirtualBox vm

View file

@ -0,0 +1,17 @@
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstallFromPpa
import org.domaindrivenarchitecture.provs.ubuntu.install.base.isPackageInstalled
fun Prov.installZimWiki() = def {
if (isPackageInstalled("zim")) {
ProvResult(true, out = "zim already installed.")
} else {
aptInstallFromPpa("jaap.karssenberg", "zim", "zim")
aptInstall("python3-gtkspellcheck")
}
}

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.filesystem.base
package org.domaindrivenarchitecture.provs.ubuntu.filesystem.base
import io.provs.core.*
import io.provs.core.platforms.SHELL
import org.domaindrivenarchitecture.provs.core.*
import org.domaindrivenarchitecture.provs.core.platforms.SHELL
import java.io.File

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.git
package org.domaindrivenarchitecture.provs.ubuntu.git
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
fun Prov.provisionGit(

View file

@ -1,12 +1,12 @@
package io.provs.ubuntu.git.base
package org.domaindrivenarchitecture.provs.ubuntu.git.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.addTextToFile
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.dirExists
import io.provs.ubuntu.keys.base.isHostKnown
import io.provs.ubuntu.utils.printToShell
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.addTextToFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.dirExists
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.isHostKnown
import org.domaindrivenarchitecture.provs.ubuntu.utils.printToShell
import java.io.File

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.install.base
package org.domaindrivenarchitecture.provs.ubuntu.install.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
private var aptInit = false

View file

@ -1,11 +1,11 @@
package io.provs.ubuntu.keys
package org.domaindrivenarchitecture.provs.ubuntu.keys
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.Secret
import io.provs.ubuntu.keys.base.configureGpgKeys
import io.provs.ubuntu.keys.base.configureSshKeys
import io.provs.ubuntu.secret.SecretSourceType
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.configureGpgKeys
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.configureSshKeys
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSourceType
import kotlinx.serialization.Serializable

View file

@ -1,14 +1,14 @@
package io.provs.ubuntu.keys.base
package org.domaindrivenarchitecture.provs.ubuntu.keys.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.filesystem.base.createSecretFile
import io.provs.ubuntu.filesystem.base.dirExists
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.keys.KeyPair
import io.provs.ubuntu.utils.printToShell
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createSecretFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.dirExists
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.ubuntu.utils.printToShell
/**

View file

@ -1,10 +1,10 @@
package io.provs.ubuntu.keys.base
package org.domaindrivenarchitecture.provs.ubuntu.keys.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.filesystem.base.createDir
import io.provs.ubuntu.filesystem.base.createSecretFile
import io.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDir
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createSecretFile
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
/**

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.secret
package org.domaindrivenarchitecture.provs.ubuntu.secret
import io.provs.core.Secret
import io.provs.ubuntu.secret.secretSources.*
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources.*
import kotlinx.serialization.Serializable

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import io.provs.core.Prov
import io.provs.core.Secret
import io.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
/**

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import io.provs.core.Prov
import io.provs.core.Secret
import io.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
/**

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import io.provs.core.Prov
import io.provs.core.Secret
import io.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
/**

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import io.provs.core.Secret
import io.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
class PlainSecretSource(plainSecret: String) : SecretSource(plainSecret) {

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import io.provs.core.Secret
import io.provs.ubuntu.secret.SecretSource
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSource
import java.awt.FlowLayout
import javax.swing.*

View file

@ -1,6 +1,6 @@
package io.provs.ubuntu.user
package org.domaindrivenarchitecture.provs.ubuntu.user
import io.provs.ubuntu.keys.KeyPairSource
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPairSource
import kotlinx.serialization.Serializable
import kotlinx.serialization.json.Json
import java.io.BufferedReader

View file

@ -1,15 +1,15 @@
package io.provs.ubuntu.user.base
package org.domaindrivenarchitecture.provs.ubuntu.user.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.Secret
import io.provs.core.processors.RemoteProcessor
import io.provs.ubuntu.filesystem.base.createDirs
import io.provs.ubuntu.filesystem.base.fileExists
import io.provs.ubuntu.git.provisionGit
import io.provs.ubuntu.keys.base.gpgFingerprint
import io.provs.ubuntu.keys.provisionKeysCurrentUser
import io.provs.ubuntu.user.UserConfig
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.core.processors.RemoteProcessor
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createDirs
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileExists
import org.domaindrivenarchitecture.provs.ubuntu.git.provisionGit
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.gpgFingerprint
import org.domaindrivenarchitecture.provs.ubuntu.keys.provisionKeysCurrentUser
import org.domaindrivenarchitecture.provs.ubuntu.user.UserConfig
import java.net.InetAddress

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.utils
package org.domaindrivenarchitecture.provs.ubuntu.utils
import io.provs.core.escapeBackslash
import io.provs.core.escapeDoubleQuote
import org.domaindrivenarchitecture.provs.core.escapeBackslash
import org.domaindrivenarchitecture.provs.core.escapeDoubleQuote
// todo: investigate to use .escapeAndEncloseByDoubleQuoteForShell() or similar instead (?)

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.web.base
package org.domaindrivenarchitecture.provs.ubuntu.web.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.install.base.isPackageInstalled
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.isPackageInstalled
/**

View file

@ -1,9 +1,9 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
import io.provs.core.docker.provideContainer
import io.provs.test.tags.ContainerTest
import io.provs.test.tags.NonCi
import io.provs.test.testLocal
import org.domaindrivenarchitecture.provs.core.docker.provideContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.test.testLocal
import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test

View file

@ -1,7 +1,7 @@
package io.provs.core
package org.domaindrivenarchitecture.provs.core
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test

View file

@ -1,11 +1,11 @@
package io.provs.core.docker.platforms
package org.domaindrivenarchitecture.provs.core.docker.platforms
import io.provs.core.ProvResult
import io.provs.core.docker.containerRuns
import io.provs.core.docker.exitAndRmContainer
import io.provs.core.docker.runContainer
import io.provs.test.tags.NonCi
import io.provs.test.testLocal
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.docker.containerRuns
import org.domaindrivenarchitecture.provs.core.docker.exitAndRmContainer
import org.domaindrivenarchitecture.provs.core.docker.runContainer
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.test.testLocal
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs

View file

@ -1,4 +1,4 @@
package io.provs.core.entry
package org.domaindrivenarchitecture.provs.core.entry
import org.junit.jupiter.api.AfterEach
import org.junit.jupiter.api.Assertions.assertEquals
@ -41,7 +41,7 @@ internal class EntryKtTest {
@Test
fun test_without_method_argument() {
// when
main("io.provs.core.entry.EntryTestKt")
main("org.domaindrivenarchitecture.provs.core.entry.EntryTestKt")
// then
assertEquals("main is fun \n", outContent.toString())
@ -50,7 +50,7 @@ internal class EntryKtTest {
@Test
fun test_method_main_without_args() {
// when
main("io.provs.core.entry.EntryTestKt", "main")
main("org.domaindrivenarchitecture.provs.core.entry.EntryTestKt", "main")
// then
assertEquals("main is fun \n", outContent.toString())
@ -59,7 +59,7 @@ internal class EntryKtTest {
@Test
fun test_named_method_without_args() {
// when
main("io.provs.core.entry.EntryTestKt", "testfun")
main("org.domaindrivenarchitecture.provs.core.entry.EntryTestKt", "testfun")
// then
assertEquals("test is fun \n", outContent.toString())
@ -68,7 +68,7 @@ internal class EntryKtTest {
@Test
fun test_method_main_with_args() {
// when
main("io.provs.core.entry.EntryTestKt", "main", "arg1", "arg2")
main("org.domaindrivenarchitecture.provs.core.entry.EntryTestKt", "main", "arg1", "arg2")
// then
assertEquals("main is fun arg1 arg2\n", outContent.toString())
@ -77,7 +77,7 @@ internal class EntryKtTest {
@Test
fun test_named_method_with_args() {
// when
main("io.provs.core.entry.EntryTestKt", "testfun", "arg1", "arg2")
main("org.domaindrivenarchitecture.provs.core.entry.EntryTestKt", "testfun", "arg1", "arg2")
// then
assertEquals("test is fun arg1 arg2\n", outContent.toString())

View file

@ -1,8 +1,8 @@
package io.provs.core.platformTest
package org.domaindrivenarchitecture.provs.core.platformTest
import io.provs.core.Prov
import io.provs.test.tags.NonCi
import io.provs.test.testLocal
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.test.testLocal
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs
import org.junit.jupiter.api.condition.OS

View file

@ -1,7 +1,7 @@
package io.provs.core.platformTest
package org.domaindrivenarchitecture.provs.core.platformTest
import io.provs.core.Prov
import io.provs.test.testLocal
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.test.testLocal
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs

View file

@ -1,8 +1,8 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.newline
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.core.newline
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs

View file

@ -1,8 +1,8 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.platforms.SHELL
import io.provs.test.tags.ContainerTest
import io.provs.test.testDockerWithSudo
import org.domaindrivenarchitecture.provs.core.platforms.SHELL
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.testDockerWithSudo
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs

View file

@ -1,9 +1,9 @@
package io.provs.core.processors
package org.domaindrivenarchitecture.provs.core.processors
import io.provs.core.Prov
import io.provs.core.escapeAndEncloseByDoubleQuoteForShell
import io.provs.core.escapeProcentForPrintf
import io.provs.core.escapeSingleQuoteForShell
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.escapeAndEncloseByDoubleQuoteForShell
import org.domaindrivenarchitecture.provs.core.escapeProcentForPrintf
import org.domaindrivenarchitecture.provs.core.escapeSingleQuoteForShell
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,15 +1,15 @@
package io.provs.ubuntu.extensions.server_software.firewall
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.firewall
import io.provs.core.Prov
import io.provs.core.docker.dockerProvideImage
import io.provs.core.docker.dockerimages.UbuntuPlusUser
import io.provs.core.docker.exitAndRmContainer
import io.provs.core.local
import io.provs.core.processors.ContainerEndMode
import io.provs.core.processors.ContainerStartMode
import io.provs.core.processors.ContainerUbuntuHostProcessor
import io.provs.test.tags.NonCi
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.docker.dockerProvideImage
import org.domaindrivenarchitecture.provs.core.docker.dockerimages.UbuntuPlusUser
import org.domaindrivenarchitecture.provs.core.docker.exitAndRmContainer
import org.domaindrivenarchitecture.provs.core.local
import org.domaindrivenarchitecture.provs.core.processors.ContainerEndMode
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.core.processors.ContainerUbuntuHostProcessor
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,11 +1,11 @@
package nexus
import io.provs.test.defaultTestContainer
import io.provs.ubuntu.extensions.server_software.nexus.provisionNexusWithDocker
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nexus.provisionNexusWithDocker
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test
import io.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
internal class ProvisionNexusKtTest {

View file

@ -1,11 +1,11 @@
package io.provs.ubuntu.extensions.server_software.nginx
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx
import io.provs.test.defaultTestContainer
import io.provs.test.tags.NonCi
import io.provs.ubuntu.filesystem.base.replaceTextInFile
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.extensions.server_software.nginx.base.*
import io.provs.ubuntu.filesystem.base.fileExists
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.replaceTextInFile
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base.*
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileExists
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,14 +1,14 @@
package io.provs.ubuntu.extensions.server_software.nginx.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.base
import io.provs.ubuntu.filesystem.base.createFile
import io.provs.ubuntu.filesystem.base.fileContainsText
import io.provs.ubuntu.extensions.server_software.nginx.configFile
import io.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.createFile
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.fileContainsText
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.configFile
import org.domaindrivenarchitecture.provs.ubuntu.extensions.server_software.nginx.provisionNginxStandAlone
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
import io.provs.test.defaultTestContainer
import io.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.NonCi
internal class LocationsKtTest {

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.keys
package org.domaindrivenarchitecture.provs.ubuntu.extensions.test_keys
fun publicGPGSnakeoilKey(): String {

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.extensions.workplace
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace
import io.provs.core.Password
import org.domaindrivenarchitecture.provs.core.Password
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
import io.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
internal class ProvisionWorkplaceKtTest {

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.test.defaultTestContainer
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,22 +1,22 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Prov
import io.provs.core.ProvResult
import io.provs.core.Secret
import io.provs.core.docker.exitAndRmContainer
import io.provs.core.local
import io.provs.core.processors.ContainerStartMode
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import io.provs.test.tags.NonCi
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.keys.KeyPair
import io.provs.ubuntu.keys.base.configureGpgKeys
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.ProvResult
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.core.docker.exitAndRmContainer
import org.domaindrivenarchitecture.provs.core.local
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.tags.NonCi
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.configureGpgKeys
import org.junit.jupiter.api.Assertions.assertFalse
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test
import io.provs.ubuntu.extensions.test_keys.privateGPGSnakeoilKey
import io.provs.ubuntu.extensions.test_keys.publicGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.ubuntu.extensions.test_keys.privateGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.ubuntu.extensions.test_keys.publicGPGSnakeoilKey
internal class GopassBridgeKtTest {

View file

@ -1,20 +1,20 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.core.Secret
import io.provs.core.remote
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import io.provs.ubuntu.filesystem.base.*
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.keys.KeyPair
import io.provs.ubuntu.keys.base.configureGpgKeys
import io.provs.ubuntu.keys.base.gpgFingerprint
import io.provs.ubuntu.secret.secretSources.GopassSecretSource
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.core.remote
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.ubuntu.filesystem.base.*
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.configureGpgKeys
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.gpgFingerprint
import org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources.GopassSecretSource
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test
import io.provs.ubuntu.extensions.test_keys.privateGPGSnakeoilKey
import io.provs.ubuntu.extensions.test_keys.publicGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.ubuntu.extensions.test_keys.privateGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.ubuntu.extensions.test_keys.publicGPGSnakeoilKey
internal class GopassKtTest {

View file

@ -1,10 +1,10 @@
package io.provs.ubuntu.extensions.workplace.base
package org.domaindrivenarchitecture.provs.ubuntu.extensions.workplace.base
import io.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test
import io.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
internal class VSCodeKtTest {

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.filesystem.base
package org.domaindrivenarchitecture.provs.ubuntu.filesystem.base
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.Test

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.git.base
package org.domaindrivenarchitecture.provs.ubuntu.git.base
import io.provs.test.defaultTestContainer
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.keys.base.isHostKnown
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.keys.base.isHostKnown
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.install.base
package org.domaindrivenarchitecture.provs.ubuntu.install.base
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.keys
package org.domaindrivenarchitecture.provs.ubuntu.keys
import io.provs.core.Secret
import io.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs
import org.junit.jupiter.api.condition.OS

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.extensions.test_keys
package org.domaindrivenarchitecture.provs.ubuntu.keys
fun publicGPGSnakeoilKey(): String {

View file

@ -1,14 +1,14 @@
package io.provs.ubuntu.keys.base
package org.domaindrivenarchitecture.provs.ubuntu.keys.base
import io.provs.core.Prov
import io.provs.core.Secret
import io.provs.core.processors.ContainerStartMode
import io.provs.test.defaultTestContainer
import io.provs.test.tags.ContainerTest
import io.provs.ubuntu.install.base.aptInstall
import io.provs.ubuntu.keys.KeyPair
import io.provs.ubuntu.keys.privateGPGSnakeoilKey
import io.provs.ubuntu.keys.publicGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.core.processors.ContainerStartMode
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.ubuntu.install.base.aptInstall
import org.domaindrivenarchitecture.provs.ubuntu.keys.KeyPair
import org.domaindrivenarchitecture.provs.ubuntu.keys.privateGPGSnakeoilKey
import org.domaindrivenarchitecture.provs.ubuntu.keys.publicGPGSnakeoilKey
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertTrue
import org.junit.jupiter.api.Test

View file

@ -1,8 +1,8 @@
package io.provs.ubuntu.keys.base
package org.domaindrivenarchitecture.provs.ubuntu.keys.base
import io.provs.core.Secret
import io.provs.test.defaultTestContainer
import io.provs.ubuntu.keys.*
import org.domaindrivenarchitecture.provs.core.Secret
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.ubuntu.keys.*
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.Assertions.*

View file

@ -1,4 +1,4 @@
package io.provs.ubuntu.secret.secretSources
package org.domaindrivenarchitecture.provs.ubuntu.secret.secretSources
import org.junit.jupiter.api.Disabled
import org.junit.jupiter.api.Test

View file

@ -1,9 +1,9 @@
package io.provs.ubuntu.user
package org.domaindrivenarchitecture.provs.ubuntu.user
import io.provs.test.defaultTestContainer
import io.provs.ubuntu.keys.*
import io.provs.ubuntu.secret.SecretSourceType
import io.provs.ubuntu.user.base.configureUser
import org.domaindrivenarchitecture.provs.test.defaultTestContainer
import org.domaindrivenarchitecture.provs.ubuntu.keys.*
import org.domaindrivenarchitecture.provs.ubuntu.secret.SecretSourceType
import org.domaindrivenarchitecture.provs.ubuntu.user.base.configureUser
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.condition.EnabledOnOs
import org.junit.jupiter.api.condition.OS

View file

@ -1,7 +1,7 @@
package io.provs.ubuntu.utils
package org.domaindrivenarchitecture.provs.ubuntu.utils
import io.provs.core.Prov
import io.provs.test.tags.ContainerTest
import org.domaindrivenarchitecture.provs.core.Prov
import org.domaindrivenarchitecture.provs.test.tags.ContainerTest
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Test

Some files were not shown because too many files have changed in this diff Show more