mirror of
https://github.com/kreuzwerker/terraform-provider-docker.git
synced 2026-02-18 18:18:08 -05:00
fix: Modified scripts to at least run tests with podman
This commit is contained in:
parent
0017485163
commit
eba183b62d
4 changed files with 23 additions and 19 deletions
|
|
@ -75,18 +75,18 @@ func TestAccDockerProvider_WithMultipleRegistryAuth(t *testing.T) {
|
|||
}
|
||||
|
||||
func testAccPreCheck(t *testing.T) {
|
||||
cmd := exec.Command("docker", "version")
|
||||
cmd := exec.Command("podman", "version")
|
||||
if err := cmd.Run(); err != nil {
|
||||
t.Fatalf("Docker must be available: %s", err)
|
||||
}
|
||||
|
||||
cmd = exec.Command("docker", "node", "ls")
|
||||
if err := cmd.Run(); err != nil {
|
||||
cmd = exec.Command("docker", "swarm", "init")
|
||||
if err := cmd.Run(); err != nil {
|
||||
t.Fatalf("Docker swarm could not be initialized: %s", err)
|
||||
}
|
||||
}
|
||||
// cmd = exec.Command("docker", "node", "ls")
|
||||
// if err := cmd.Run(); err != nil {
|
||||
// cmd = exec.Command("docker", "swarm", "init")
|
||||
// if err := cmd.Run(); err != nil {
|
||||
// t.Fatalf("Docker swarm could not be initialized: %s", err)
|
||||
// }
|
||||
// }
|
||||
|
||||
err := testAccProvider.Configure(context.Background(), terraform.NewResourceConfigRaw(nil))
|
||||
if err != nil {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,8 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
shopt -s expand_aliases
|
||||
alias docker="podman"
|
||||
|
||||
for p in $(docker container ls -f 'name=private_registry' -q); do docker stop $p; done
|
||||
echo "### stopped private registry ###"
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ set -e
|
|||
|
||||
echo -n "foo" > "$(pwd)/scripts/testing/testingFile"
|
||||
echo -n `base64 $(pwd)/scripts/testing/testingFile` > "$(pwd)/scripts/testing/testingFile.base64"
|
||||
|
||||
shopt -s expand_aliases
|
||||
alias docker="podman"
|
||||
# Create self signed certs
|
||||
mkdir -p "$(pwd)"/scripts/testing/certs
|
||||
openssl req \
|
||||
|
|
@ -20,18 +21,18 @@ mkdir -p "$(pwd)"/scripts/testing/auth
|
|||
# pinned to 2.7.0 due to https://github.com/docker/docker.github.io/issues/11060
|
||||
docker run --rm --entrypoint htpasswd registry:2.7.0 -Bbn testuser testpwd > "$(pwd)"/scripts/testing/auth/htpasswd
|
||||
docker run -d -p 15000:5000 --rm --name private_registry \
|
||||
-v "$(pwd)"/scripts/testing/auth:/auth \
|
||||
-v /mnt/testing/auth:/auth \
|
||||
-e "REGISTRY_AUTH=htpasswd" \
|
||||
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
|
||||
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
|
||||
-v "$(pwd)"/scripts/testing/certs:/certs \
|
||||
-v /mnt/testing/certs:/certs \
|
||||
-e "REGISTRY_HTTP_TLS_CERTIFICATE=/certs/registry_auth.crt" \
|
||||
-e "REGISTRY_HTTP_TLS_KEY=/certs/registry_auth.key" \
|
||||
-e "REGISTRY_STORAGE_DELETE_ENABLED=true" \
|
||||
registry:2.7.0
|
||||
|
||||
docker run -d -p 15001:5000 --rm --name http_private_registry \
|
||||
-v "$(pwd)"/scripts/testing/auth:/auth \
|
||||
-v /mnt/testing/auth:/auth \
|
||||
-e "REGISTRY_AUTH=htpasswd" \
|
||||
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
|
||||
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
|
||||
|
|
@ -40,19 +41,19 @@ docker run -d -p 15001:5000 --rm --name http_private_registry \
|
|||
# wait a bit for travis...
|
||||
sleep 5
|
||||
# Login to private registry
|
||||
docker login -u testuser -p testpwd 127.0.0.1:15000
|
||||
docker login -u testuser -p testpwd 127.0.0.1:15001
|
||||
docker login -u testuser -p testpwd --tls-verify=false 127.0.0.1:15000
|
||||
docker login -u testuser -p testpwd --tls-verify=false 127.0.0.1:15001
|
||||
# Build private images
|
||||
for i in $(seq 1 3); do
|
||||
docker build -t tftest-service --build-arg MAIN_FILE_PATH=v${i}/main.go "$(pwd)"/scripts/testing -f "$(pwd)"/scripts/testing/Dockerfile
|
||||
docker tag tftest-service 127.0.0.1:15000/tftest-service:v${i}
|
||||
docker push 127.0.0.1:15000/tftest-service:v${i}
|
||||
docker push --tls-verify=false 127.0.0.1:15000/tftest-service:v${i}
|
||||
docker tag tftest-service 127.0.0.1:15000/tftest-service
|
||||
docker push 127.0.0.1:15000/tftest-service
|
||||
docker push --tls-verify=false 127.0.0.1:15000/tftest-service
|
||||
docker tag tftest-service 127.0.0.1:15001/tftest-service:v${i}
|
||||
docker push 127.0.0.1:15001/tftest-service:v${i}
|
||||
docker push --tls-verify=false 127.0.0.1:15001/tftest-service:v${i}
|
||||
docker tag tftest-service 127.0.0.1:15001/tftest-service
|
||||
docker push 127.0.0.1:15001/tftest-service
|
||||
docker push --tls-verify=false 127.0.0.1:15001/tftest-service
|
||||
done
|
||||
# Remove images from host machine before starting the tests
|
||||
for i in $(docker images -aq 127.0.0.1:15000/tftest-service); do docker rmi -f "$i"; done
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ ARG MAIN_FILE_PATH
|
|||
RUN echo "appuser:x:65534:65534:Appuser:/:" > /etc/passwd
|
||||
WORKDIR /build
|
||||
COPY $MAIN_FILE_PATH main.go
|
||||
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o server main.go
|
||||
RUN HOME=/root CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o server main.go
|
||||
|
||||
FROM alpine
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue