iksaku / openstack-swift-action

Github Action that integrates OpenStack's Swift to manage compatible service providers.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

openstack-swift-action

Description

This action allows you to manage project files with your prefered (Swift-compatible) Object Storage provider. It uses my personal docker image openstack-swift-container.

Usage

  • Basic Usage

    Assume have all our Keystone credentials stored in our repo's Secrets. We must pass them in form of environment variables to the action in order to authenticate against our service provier:

    steps:
      ...
      - uses: iksaku/openstack-swift-action@master
        env:
          OS_AUTH_URL: ${{ secrets.AUTH_URL }}
          OS_PASSWORD: ${{ secrets.PASSWORD }}
          OS_PROJECT_NAME: ${{ secrets.PROJECT_NAME }}
          OS_REGION_NAME: ${{ secrets.REGION_NAME }}
          OS_USERNAME: ${{ secrets.USERNAME }}
          OS_USER_DOMAIN_NAME: ${{ secrets.USER_DOMAIN_NAME }}
        with:
          args: list openstack-swift-action
      ...

    You must authenticate against your Object Storage service provider via Environment Variables.

    Learn more about Swift Authentication

    You can store these variables as Secrets in your Github repo, and refer them in your workflow.

    Learn more about using Github Secrets in your Workflow

  • Skipping Auth Pre-Check

    By default, this action executes an authentication check before executing your command arguments. This will help you notice when you haven't setup your credentials properly.

    If your credentials are not valid nor setup properly, the image will halt execution and provide an error message.

    If you don't want to run an authentication check before your command, you can supress this behaviour by passing a false value to action's auth_check input:

    steps:
      ...
      - uses: iksaku/openstack-swift-action@master
        with:
          auth_check: false
          args: --version
      ...

About

Github Action that integrates OpenStack's Swift to manage compatible service providers.