diff --git a/ruby/Gemfile.lock b/ruby/Gemfile.lock index 5f65154e..fd5fc9ca 100644 --- a/ruby/Gemfile.lock +++ b/ruby/Gemfile.lock @@ -1,7 +1,7 @@ PATH remote: . specs: - ci-queue (0.81.0) + ci-queue (0.82.0) logger GEM diff --git a/ruby/README.md b/ruby/README.md index 92ba5b99..0c463c0a 100644 --- a/ruby/README.md +++ b/ruby/README.md @@ -71,6 +71,28 @@ rspec-queue --queue redis://example.com --timeout 600 --report Because of how `ci-queue` executes the examples, `before(:all)` and `after(:all)` hooks are not supported. `rspec-queue` will explicitly reject them. +## Releasing a New Version + +After merging changes to `main`, follow these steps to release and propagate the update: + +1. **Bump the version** in `ruby/lib/ci/queue/version.rb`: + + ```ruby + VERSION = '0.XX.0' + ``` + +2. **Update `Gemfile.lock`** by running `bundle install` in the `ruby/` directory (or manually updating the version string in `Gemfile.lock` if native dependencies prevent `bundle install`). + +3. **Commit and merge** the version bump to `main`. ShipIt will automatically publish the gem to RubyGems. + +4. **Update dependent apps/zones**: Any application that depends on `ci-queue` (e.g. via its `Gemfile`) needs to pick up the new version by running: + + ```bash + bundle update ci-queue + ``` + + This updates the app's `Gemfile.lock` to reference the new `ci-queue` version. Commit the updated `Gemfile.lock` and deploy. + ## Custom Redis Expiry `ci-queue` expects the Redis server to have an [eviction policy](https://redis.io/docs/manual/eviction/#eviction-policies) of `allkeys-lru`. diff --git a/ruby/lib/ci/queue/version.rb b/ruby/lib/ci/queue/version.rb index dc4e28e3..95d7a41a 100644 --- a/ruby/lib/ci/queue/version.rb +++ b/ruby/lib/ci/queue/version.rb @@ -2,7 +2,7 @@ module CI module Queue - VERSION = '0.81.0' + VERSION = '0.82.0' DEV_SCRIPTS_ROOT = ::File.expand_path('../../../../../redis', __FILE__) RELEASE_SCRIPTS_ROOT = ::File.expand_path('../redis', __FILE__) end