pipeline:
  image:
    image: golang
    commands:
      - go test

  image-pull:
    image: golang
    pull: true
    commands:
      - go test

  single-command:
    image: golang
    commands: go test

  commands:
    image: golang
    commands:
      - go get
      - go test

  environment:
    image: golang
    environment:
      CGO: 0
      GOOS: linux
      GOARCH: amd64
    commands:
      - go test

  environment-array:
    image: golang
    environment:
      - CGO=0
      - GOOS=linux
      - GOARCH=amd64
    commands:
      - go test

  secrets:
    image: docker
    commands:
      - echo $DOCKER_USERNAME
      - echo $DOCKER_PASSWORD
    secrets:
      - docker_username
      - source: docker_prod_password
        target: docker_password

  group:
    group: test
    image: golang
    commands:
      - go test

  detached:
    image: redis
    detach: true

  volume:
    image: docker
    commands:
      - docker build --rm -t octocat/hello-world .
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
