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

@@ -5,6 +5,7 @@ import (
"dagger.io/dagger/op"
"dagger.io/alpine"
"dagger.io/docker"
"dagger.io/random"
)
source: dagger.#Artifact
@@ -15,9 +16,11 @@ registry: {
}
TestPushAndPull: {
random: #Random & {}
tag: random.#String & {
seed: ""
}
ref: "daggerio/ci-test:\(random.out)"
ref: "daggerio/ci-test:\(tag.out)"
// Create image
image: docker.#ImageFromDockerfile & {

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"
},
]
}
}

View File

@@ -3,13 +3,16 @@ package main
import (
"dagger.io/docker"
"dagger.io/dagger"
"dagger.io/random"
)
TestRun: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
run: docker.#Run & {
name: "daggerci-test-local-\(random.out)"
name: "daggerci-test-local-\(suffix.out)"
ref: "hello-world"
}
}

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"
},
]
}
}

View File

@@ -3,6 +3,7 @@ package docker
import (
"dagger.io/docker"
"dagger.io/dagger"
"dagger.io/random"
)
key: dagger.#Secret @dagger(input)
@@ -10,14 +11,16 @@ passphrase: dagger.#Secret @dagger(input)
user: string @dagger(input)
TestRun: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
run: docker.#Run & {
host: "143.198.64.230"
ref: "nginx:alpine"
"user": user
"passphrase": passphrase
name: "daggerci-test-simple-\(random.out)"
name: "daggerci-test-simple-\(suffix.out)"
"key": key
}
}

View File

@@ -3,6 +3,7 @@ package main
import (
"dagger.io/docker"
"dagger.io/dagger"
"dagger.io/random"
)
TestConfig: {
@@ -13,11 +14,13 @@ TestConfig: {
}
TestRun: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
run: docker.#Run & {
ref: "hello-world"
name: "daggerci-test-simple-\(random.out)"
name: "daggerci-test-simple-\(suffix.out)"
ssh: {
host: TestConfig.host

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"
},
]
}
}

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"
},
]
}
}

View File

@@ -3,6 +3,7 @@ package main
import (
"dagger.io/docker"
"dagger.io/dagger"
"dagger.io/random"
)
TestConfig: {
@@ -13,10 +14,12 @@ TestConfig: {
}
TestRun: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
run: docker.#Run & {
name: "daggerci-test-simple-\(random.out)"
name: "daggerci-test-simple-\(suffix.out)"
ref: "hello-world"
ssh: {

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"
},
]
}
}

View File

@@ -3,6 +3,7 @@ package main
import (
"dagger.io/docker"
"dagger.io/dagger"
"dagger.io/random"
)
TestConfig: {
@@ -11,13 +12,13 @@ TestConfig: {
key: dagger.#Secret @dagger(input)
}
key: dagger.#Secret @dagger(input)
TestSSH: {
random: #Random & {}
suffix: random.#String & {
seed: ""
}
run: docker.#Run & {
name: "daggerci-test-simple-\(random.out)"
name: "daggerci-test-simple-\(suffix.out)"
ref: "hello-world"
ssh: {