Azure Container Registry Build Runner
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update docs to point to official Microsoft docs. Minor updates to iss… Oct 29, 2018
baseimages/docker-cli support git-lfs (#332) Oct 22, 2018
builder Adds deadcode to linter (#373) Jan 3, 2019
cmd/acb Delete unused function, refactor validation tests (#380) Jan 11, 2019
docs Update docs to point to official Microsoft docs. Minor updates to iss… Oct 29, 2018
graph Delete unused function, refactor validation tests (#380) Jan 11, 2019
pkg Allows steps to be repeated (#359) Dec 4, 2018
scan Adds deadcode to linter (#373) Jan 3, 2019
scripts/setup Refactor CLI (#372) Dec 21, 2018
templating Remove country as a keyword (#378) Jan 9, 2019
util Throw an exception if a step's ID contains spaces Sep 18, 2018
vendor Switch to Go modules for packaging (#365) Dec 6, 2018
version Add ldflags (#376) Jan 4, 2019
.dockerignore Update dockerignore (#374) Jan 3, 2019
.gitignore Refactor CLI (#372) Dec 21, 2018
.gometalinter.json Adds deadcode to linter (#373) Jan 3, 2019
.travis.yml Refactor CLI (#372) Dec 21, 2018
CONTRIBUTING.md contributing guidelines, fixes #17 Oct 18, 2017
Dockerfile Refactor CLI (#372) Dec 21, 2018
LICENSE Initial commit Jul 29, 2017
Makefile Add ldflags (#376) Jan 4, 2019
Makefile.windows Update Makefile for Windows (#156) Jul 7, 2018
README.md Update docs to point to official Microsoft docs. Minor updates to iss… Oct 29, 2018
Windows.Dockerfile Refactor CLI (#372) Dec 21, 2018
acb.windows.yaml First-class build in Step (#213) Aug 13, 2018
acb.yaml First-class build in Step (#213) Aug 13, 2018
appveyor.yml Refactor CLI (#372) Dec 21, 2018
go.mod Refactor CLI (#372) Dec 21, 2018
go.sum Refactor CLI (#372) Dec 21, 2018

README.md

ACR builder

Build Status

ACR Builder is the backbone behind Azure Container Registry Tasks.

It can be used to automate container image patching and execute arbitrary containers for complex workflows.

You can find examples of how to create multi-step tasks here and a reference to the YAML properties here.

Requirements

  • Docker
  • There are also dependency images that are used throughout the task. Refer to the baseimages folder for corresponding Dockerfiles to generate these images, and review the list below for Linux/Windows.

Building

With Docker, execute the following commands from the root of the repository.

Linux:

$ docker build -f Dockerfile -t acb .

Windows:

$ docker build -f Windows.Dockerfile -t acb .

Linux Images

  • acb
  • docker
  • ubuntu

Windows Images

  • acb
  • docker
  • microsoft/windowsservercore:1803

Usage

$ acb --help

Usage:
  acb [command]

Available Commands:
  build       Run a build
  download    Download the specified context to a destination folder
  exec        Execute a task
  help        Help about any command
  render      Render a template
  scan        Scan a Dockerfile
  version     Print version information

Flags:
  -d, --debug   enable verbose output for debugging
  -h, --help    help for acb

Building an image

See acb build --help for a list of all parameters.

$ docker run -v /var/run/docker.sock:/var/run/docker.sock acb build https://github.com/Azure/acr-builder.git

Running a task

See acb exec --help for a list of all parameters.

$ docker run -v $(pwd):/workspace --workdir /workspace -v /var/run/docker.sock:/var/run/docker.sock acb exec --homevol $(pwd) -f templating/testdata/helloworld/git-build.yaml --values templating/testdata/helloworld/values.yaml --id demo -r foo.azurecr.io

Rendering a template locally

$ acb render -f acb.yaml --values values.yaml

If your template uses .Run.ID or other .Run variables, refer to the full list of parameters using acb render --help.