Sha256: 9da8d5325d66fd38f71e3d169f01e4382aee76ed754e76bf58cc260209466afc

Contents?: true

Size: 1.28 KB

Versions: 19

Compression:

Stored size: 1.28 KB

Contents

module HybridPlatformsConductor

  module CommonConfigDsl

    # Add common Github config DSL to declare known Github repositories
    module Github

      # List of Github repositories
      # Array< Hash<Symbol, Object> >
      # * *user* (String): User or organization name, storing repositories
      # * *url* (String): URL to the Github API
      # * *repos* (Array<String> or Symbol): List of repository names from this project, or :all for all
      attr_reader :known_github_repos

      # Initialize the DSL
      def init_github
        # List of Github repositories definitions
        # Array< Hash<Symbol, Object> >
        # Each definition is just mapping the signature of #github_repos
        @known_github_repos = []
      end

      # Register new Github repositories
      #
      # Parameters::
      # * *user* (String): User or organization name, storing repositories
      # * *url* (String): URL to the Github API [default: 'https://api.github.com']
      # * *repos* (Array<String> or Symbol): List of repository names from this project, or :all for all [default: :all]
      def github_repos(user:, url: 'https://api.github.com', repos: :all)
        @known_github_repos << {
          url: url,
          user: user,
          repos: repos
        }
      end

    end

  end

end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
hybrid_platforms_conductor-33.9.5 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.9.4 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.9.2 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.9.1 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.9.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.8.4 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.8.3 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.8.2 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.8.1 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.8.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.7.4 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.7.3 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.7.2 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.7.1 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.7.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.6.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.5.1 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.5.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb
hybrid_platforms_conductor-33.4.0 lib/hybrid_platforms_conductor/common_config_dsl/github.rb