summaryrefslogtreecommitdiff
path: root/cmd/authelia-scripts/docker.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/authelia-scripts/docker.go')
-rw-r--r--cmd/authelia-scripts/docker.go34
1 files changed, 3 insertions, 31 deletions
diff --git a/cmd/authelia-scripts/docker.go b/cmd/authelia-scripts/docker.go
index 03418fdb3..bad42b4fa 100644
--- a/cmd/authelia-scripts/docker.go
+++ b/cmd/authelia-scripts/docker.go
@@ -22,40 +22,12 @@ func (d *Docker) Tag(image, tag string) error {
// Login login to the dockerhub registry.
func (d *Docker) Login(username, password, registry string) error {
- return utils.CommandWithStdout("docker", "login", registry, "-u", username, "-p", password).Run()
-}
-
-// Push push a docker image to dockerhub.
-func (d *Docker) Push(tag string) error {
- return utils.CommandWithStdout("docker", "push", tag).Run()
+ return utils.CommandWithStdout("bash", "-c", `echo `+password+` | docker login `+registry+` --password-stdin -u `+username).Run()
}
// Manifest push a docker manifest to dockerhub.
-func (d *Docker) Manifest(tag, amd64tag, arm32v7tag, arm64v8tag string) error {
- err := utils.CommandWithStdout("docker", "manifest", "create", tag, amd64tag, arm32v7tag, arm64v8tag).Run()
-
- if err != nil {
- panic(err)
- }
-
- err = utils.CommandWithStdout("docker", "manifest", "annotate", tag, arm32v7tag, "--os", "linux", "--arch", "arm").Run()
-
- if err != nil {
- panic(err)
- }
-
- err = utils.CommandWithStdout("docker", "manifest", "annotate", tag, arm64v8tag, "--os", "linux", "--arch", "arm64", "--variant", "v8").Run()
-
- if err != nil {
- panic(err)
- }
-
- return utils.CommandWithStdout("docker", "manifest", "push", "--purge", tag).Run()
-}
-
-// CleanTag remove a tag from dockerhub.
-func (d *Docker) CleanTag(tag string) error {
- return utils.CommandWithStdout("bash", "-c", `token=$(curl -fs --retry 3 -H "Content-Type: application/json" -X "POST" -d '{"username": "'$DOCKER_USERNAME'", "password": "'$DOCKER_PASSWORD'"}' https://hub.docker.com/v2/users/login/ | jq -r .token) && curl -fs --retry 3 -o /dev/null -L -X "DELETE" -H "Authorization: JWT $token" https://hub.docker.com/v2/repositories/`+DockerImageName+"/tags/"+tag+"/").Run()
+func (d *Docker) Manifest(tag1, tag2 string) error {
+ return utils.CommandWithStdout("docker", "build", "-t", tag1, "-t", tag2, "--platform", "linux/amd64,linux/arm/v7,linux/arm64", "--builder", "buildx", "--push", ".").Run()
}
// PublishReadme push README.md to dockerhub.