github.com/NVIDIA/aistore@v1.3.23-0.20240517131212-7df6609be51d/.github/workflows/docker.yml (about)

     1  name: Docker Images
     2  
     3  on:
     4    workflow_dispatch:
     5      inputs:
     6        build_admin_image:
     7          description: 'Build admin image (aistorage/admin)'
     8          required: true
     9          type: boolean
    10          default: true
    11  
    12        build_aisnode_image:
    13          description: 'Build aisnode image (aistorage/aisnode)'
    14          required: true
    15          type: boolean
    16          default: true
    17  
    18        build_cluster_minimal_image:
    19          description: 'Build cluster-minimal image (aistorage/cluster-minimal)'
    20          required: true
    21          type: boolean
    22          default: true
    23  
    24        build_gitlab_ci_image:
    25          description: 'Build GitLab CI image (aistorage/ci)'
    26          required: true
    27          type: boolean
    28          default: true
    29  
    30        build_aisnode_minikube_image:
    31          description: 'Build aisnode-minikube image (aistorage/aisnode-minikube)'
    32          required: true
    33          type: boolean
    34          default: true
    35  
    36        build_ais_init_image:
    37          description: 'Build ais-init image (aistorage/ais-init)'
    38          required: true
    39          type: boolean
    40          default: true
    41  
    42        image_tag:
    43          description: 'Tag of all the selected images'
    44          required: true
    45          default: 'latest'
    46  
    47  env:
    48    ADMIN_IMAGE: 'aistorage/admin'
    49    AISNODE_IMAGE: 'aistorage/aisnode'
    50    AISINIT_IMAGE: 'aistorage/ais-init'
    51    CLUSTER_MINIMAL_IMAGE: 'aistorage/cluster-minimal'
    52    CI_IMAGE: 'aistorage/ci'
    53    AISNODE_MINIKUBE_IMAGE: 'aistorage/aisnode-minikube'
    54  
    55  jobs:
    56    docker:
    57      runs-on: ubuntu-latest
    58      steps:
    59  
    60      - uses: actions/checkout@v4
    61  
    62      - name: Login to DockerHub
    63        uses: docker/login-action@v2
    64        with:
    65          username: ${{ secrets.DOCKERHUB_USERNAME }}
    66          password: ${{ secrets.DOCKERHUB_TOKEN }}
    67  
    68      - name: aisadmin image
    69        if: ${{ inputs.build_admin_image }}
    70        run: |
    71          pushd $GITHUB_WORKSPACE/deploy/prod/k8s/aisadmin_container
    72          IMAGE_REPO="${{ env.ADMIN_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e all
    73          popd
    74  
    75      - name: aisnode image
    76        if: ${{ inputs.build_aisnode_image }}
    77        run: |
    78          pushd $GITHUB_WORKSPACE/deploy/prod/k8s/aisnode_container
    79          IMAGE_REPO="${{ env.AISNODE_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e all
    80          popd
    81  
    82      - name: ais-init image
    83        if: ${{ inputs.build_ais_init_image }}
    84        run: |
    85          pushd $GITHUB_WORKSPACE/deploy/prod/k8s/init_container
    86          IMAGE_REPO="${{ env.AISINIT_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e all
    87          popd
    88  
    89      - name: cluster-minimal image
    90        if: ${{ inputs.build_cluster_minimal_image }}
    91        run: |
    92          pushd $GITHUB_WORKSPACE/deploy/prod/docker/single
    93          IMAGE_REPO="${{ env.CLUSTER_MINIMAL_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e all
    94          popd
    95  
    96      - name: ci image
    97        if: ${{ inputs.build_gitlab_ci_image }}
    98        run: |
    99  
   100          pushd $GITHUB_WORKSPACE/deploy/ci
   101          CI_IMAGE="${{ env.CI_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e all
   102          popd
   103  
   104      - name: aisnode-minikube image
   105        if: ${{ inputs.build_aisnode_minikube_image }}
   106        run: |
   107  
   108          pushd $GITHUB_WORKSPACE/deploy/dev/k8s
   109          IMAGE_REPO="${{ env.AISNODE_MINIKUBE_IMAGE }}" IMAGE_TAG="${{ inputs.image_tag }}" make -e docker-all
   110          popd