stdlib: add random package

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
Andrea Luzzardi
2021-06-08 11:46:31 -07:00
parent 4c40a87634
commit db0937c927
24 changed files with 152 additions and 580 deletions

View File

@@ -4,6 +4,7 @@ import (
"dagger.io/aws"
"dagger.io/aws/ecr"
"dagger.io/dagger/op"
"dagger.io/random"
)
TestConfig: awsConfig: aws.#Config & {
@@ -11,10 +12,12 @@ TestConfig: awsConfig: aws.#Config & {
}
TestECR: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
repository: "125635003186.dkr.ecr.\(TestConfig.awsConfig.region).amazonaws.com/dagger-ci"
tag: "test-ecr-\(random.out)"
tag: "test-ecr-\(suffix.out)"
creds: ecr.#Credentials & {
config: TestConfig.awsConfig
@@ -27,7 +30,7 @@ TestECR: {
op.#DockerBuild & {
dockerfile: """
FROM alpine
RUN echo \(random.out) > /test
RUN echo \(suffix.out) > /test
"""
},
@@ -63,7 +66,7 @@ TestECR: {
op.#Exec & {
always: true
args: [
"sh", "-c", "test $(cat test) = \(random.out)",
"sh", "-c", "test $(cat test) = \(suffix.out)",
]
},
]
@@ -78,7 +81,7 @@ TestECR: {
op.#DockerBuild & {
dockerfile: #"""
FROM \#(push.ref)
RUN test $(cat test) = \#(random.out)
RUN test $(cat test) = \#(suffix.out)
"""#
},
]

View File

@@ -1,49 +0,0 @@
package main
import (
"strconv"
"dagger.io/alpine"
"dagger.io/dagger/op"
)
#Random: {
size: *12 | number
out: {
string
#up: [
op.#Load & {from: alpine.#Image & {
package: python3: "=~3.8"
}},
op.#WriteFile & {
dest: "/entrypoint.py"
content: #"""
import random
import string
import os
size = int(os.environ['SIZE'])
letters = string.ascii_lowercase
print ( ''.join(random.choice(letters) for i in range(size)) )
"""#
},
op.#Exec & {
always: true
args: ["sh", "-c", #"""
printf "$(python3 /entrypoint.py)" > /rand
"""#,
]
env: SIZE: strconv.FormatInt(size, 10)
},
op.#Export & {
source: "/rand"
},
]
}
}