# https://help.github.com/en/articles/metadata-syntax-for-github-actions
name: 'Docker Meta'
description: "GitHub Action to extract metadata (tags, labels) for Docker"
author: 'crazy-max'
branding:
  color: 'blue'
  icon: 'layers'

inputs:
  images:
    description: 'List of Docker images to use as base name for tags'
    required: true
  tag-sha:
    description: 'Add git short SHA as Docker tag'
    default: 'false'
    required: false
  tag-edge:
    description: 'Enable edge branch tagging'
    default: 'false'
    required: false
  tag-edge-branch:
    description: 'Branch that will be tagged as edge (default repo.default_branch)'
    required: false
  tag-semver:
    description: 'Handle Git tag as semver template if possible'
    required: false
  tag-match:
    description: 'RegExp to match against a Git tag and use match group as Docker tag'
    required: false
  tag-match-group:
    description: 'Group to get if tag-match matches (default 0)'
    default: '0'
    required: false
  tag-latest:
    description: 'Set latest Docker tag if tag-semver, tag-match or Git tag event occurs'
    default: 'true'
    required: false
  tag-match-latest:
    deprecationMessage: 'tag-match-latest is deprecated. Use tag-latest instead'
    description: '(DEPRECATED) Set latest Docker tag if tag-match matches or on Git tag event'
    default: 'true'
    required: false
  tag-schedule:
    description: 'Template to apply to schedule tag'
    default: 'nightly'
    required: false
  tag-custom:
    description: 'List of custom tags'
    required: false
  tag-custom-only:
    description: 'Only use tag-custom as Docker tags'
    required: false
  label-custom:
    description: 'List of custom labels'
    required: false
  sep-tags:
    description: 'Separator to use for tags output (default \n)'
    required: false
  sep-labels:
    description: 'Separator to use for labels output (default \n)'
    required: false
  github-token:
    description: 'GitHub Token as provided by secrets'
    default: ${{ github.token }}
    required: true

outputs:
  version:
    description: 'Generated Docker image version'
  tags:
    description: 'Generated Docker tags'
  labels:
    description: 'Generated Docker labels'
  bake-file:
    description: 'Bake definiton file'

runs:
  using: 'node12'
  main: 'dist/index.js'