Merge pull request #579 from TomChv/refacto-random

Refactor random
This commit is contained in:
Andrea Luzzardi
2021-06-07 14:54:08 -07:00
committed by GitHub
20 changed files with 288 additions and 216 deletions

View File

@@ -11,9 +11,11 @@ kubeconfig: dagger.#Secret @dagger(input)
// Deploy user local chart
TestHelmSimpleChart: {
random: #Random & {}
// Deploy chart
deploy: helm.#Chart & {
name: "dagger-test-helm-simple-chart-\(random)"
name: "dagger-test-helm-simple-chart-\(random.out)"
namespace: "dagger-test"
"kubeconfig": kubeconfig
chartSource: dagger.#Artifact
@@ -28,9 +30,11 @@ TestHelmSimpleChart: {
// Deploy remote chart
TestHelmRepoChart: {
random: #Random & {}
// Deploy chart
deploy: helm.#Chart & {
name: "dagger-test-helm-repository-\(random)"
name: "dagger-test-helm-repository-\(random.out)"
namespace: "dagger-test"
"kubeconfig": kubeconfig
chart: "redis"

View File

@@ -1,21 +1,33 @@
package helm
import (
"strconv"
"dagger.io/alpine"
"dagger.io/dagger/op"
)
// Generate a random number
random: {
string
#up: [
op.#Load & {from: alpine.#Image},
op.#Exec & {
always: true
args: ["sh", "-c", "cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 | tr -d '\n' > /rand"]
},
op.#Export & {
source: "/rand"
},
]
#Random: {
size: *12 | number
out: {
string
#up: [
op.#Load & {from: alpine.#Image},
op.#Exec & {
always: true
args: ["sh", "-c", #"""
tr -cd '[:alpha:]' < /dev/urandom | fold -w "$SIZE" | head -n 1 | tr '[A-Z]' '[a-z]' | tr -d '\n' > /rand
"""#,
]
env: SIZE: strconv.FormatInt(size, 10)
},
op.#Export & {
source: "/rand"
},
]
}
}

View File

@@ -11,11 +11,13 @@ import (
kubeconfig: dagger.#Secret @dagger(input)
TestKubeApply: {
random: #Random & {}
// Pod spec
kubeSrc: {
apiVersion: "v1"
kind: "Pod"
metadata: name: "kube-test-\(random)"
metadata: name: "kube-test-\(random.out)"
spec: {
restartPolicy: "Never"
containers: [{

View File

@@ -1,21 +1,33 @@
package kubernetes
import (
"strconv"
"dagger.io/alpine"
"dagger.io/dagger/op"
)
// Generate a random number
random: {
string
#up: [
op.#Load & {from: alpine.#Image},
op.#Exec & {
always: true
args: ["sh", "-c", "cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 | tr -d '\n' > /rand"]
},
op.#Export & {
source: "/rand"
},
]
#Random: {
size: *12 | number
out: {
string
#up: [
op.#Load & {from: alpine.#Image},
op.#Exec & {
always: true
args: ["sh", "-c", #"""
tr -cd '[:alpha:]' < /dev/urandom | fold -w "$SIZE" | head -n 1 | tr '[A-Z]' '[a-z]' | tr -d '\n' > /rand
"""#,
]
env: SIZE: strconv.FormatInt(size, 10)
},
op.#Export & {
source: "/rand"
},
]
}
}