Skip to content
Snippets Groups Projects
Closed Phase 2: Deliver and Publish the Ruby Gem for Configuration Access
  • Phase 2: Deliver and Publish the Ruby Gem for Configuration Access

  • Phase 2: Deliver and Publish the Ruby Gem for Configuration Access

    Closed Epic created by Nikola Milojevic
    1. Create and publish the gitlab-cloud-connector Ruby gem and Python package.

      • Ruby Gem:
        • Add Rails gem to gitlab-cloud-connector project.
        • Set up the publication process via RubyGems.
        • Set Up CI/CD Tools:
          • Implement linting (e.g., RuboCop) and testing (RSpec) for the Ruby gem.
          • Use gem-release for automatic publishing.
    2. Create ADR for Unit Primitives configuration structure

    3. Extract logic for Issuing JWT Access Token

      • Ruby Library:
        • Build a Ruby library that can issue JWT Access Token. This should be configurable, so we can configure subject, the issuer, and the TTL
    4. Use Ruby Gem as SSoT to access Unit Primitive Configuration

      • Ruby Library:
        • [In Progress]Build a Ruby library that can read the new unit primitive configuration.
        • Create adapter to convert new unit primitives to old "services" yml configuration
      • CustomersDot:
        • Replace cloud_connector.yml with the Ruby gem's configuration access.
        • Use the adapter to maintain compatibility with existing interfaces.
      • Gitlab.com:
        • Replace access_data.yml with the Ruby gem's configuration access.
        • Use the adapter to maintain compatibility with existing interfaces.
    5. Automate Publishing and Version Bumping Process

      • Ruby Gem:
        • Automate the publishing process using gem-release.
        • Establish a process for bumping gem versions in dependent systems (e.g., GitLab Rails, CustomersDot).
          • Create templates similar to what exists for gitlab-styles for merge requests when updating versions.
    ✓ 14 of 14 checklist items completed · Edited by Nikola Milojevic

    Linked items 0

  • Link items together to show that they're related or that one is blocking others.

    Activity

    • All activity
    • Comments only
    • History only
    • Newest first
    • Oldest first