https://github.com/samvera/hydra-role-management
User roles for hydra users
https://github.com/samvera/hydra-role-management
core-components samvera-community
Last synced: about 1 year ago
JSON representation
User roles for hydra users
- Host: GitHub
- URL: https://github.com/samvera/hydra-role-management
- Owner: samvera
- License: other
- Created: 2013-04-10T15:54:13.000Z (about 13 years ago)
- Default Branch: main
- Last Pushed: 2024-10-02T19:50:40.000Z (over 1 year ago)
- Last Synced: 2025-03-27T00:12:02.830Z (about 1 year ago)
- Topics: core-components, samvera-community
- Language: Ruby
- Homepage:
- Size: 170 KB
- Stars: 6
- Watchers: 64
- Forks: 11
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Support: SUPPORT.md
Awesome Lists containing this project
README
# hydra-role-management
Code:
[](https://badge.fury.io/rb/hydra-role-management)
[](https://circleci.com/gh/samvera/hydra-role-management)
[](https://coveralls.io/github/samvera/hydra-role-management?branch=main)
Docs:
[](./CONTRIBUTING.md)
[](./LICENSE.md)
Community Support: [](http://slack.samvera.org/)
# What is hydra-role-management?
An engine gem to provide a RDBMS backed list of roles and their associated user. This replaces the hydra default role mapper.
As of version 1.0, this gem only supports Rails 5.
## Product Owner & Maintenance
`hydra-role-management` was a Core Component of the Samvera Community. Given a decline in available labor required for maintenance, this project no longer has a dedicated Product Owner. The documentation for what this means can be found [here](http://samvera.github.io/core_components.html#requirements-for-a-core-component).
### Product Owner
**Vacant**
_Until a Product Owner has been identified, we ask that you please direct all requests for support, bug reports, and general questions to the [`#dev` Channel on the Samvera Slack](https://samvera.slack.com/app_redirect?channel=dev)._
# Help
The Samvera community is here to help. Please see our [support guide](./SUPPORT.md).
## Installing:
- Add: `gem 'hydra-role-management'` to your Gemfile and then `bundle install`
- `rails generate roles`
- `rake db:migrate`
- Add the following [cancan](https://github.com/ryanb/cancan) abilities:
```
# app/models/ability.rb
if current_user.admin?
can [:create, :show, :add_user, :remove_user, :index, :edit, :update, :destroy], Role
end
```
## Testing:
- Install a system javascript runtime or uncomment therubyracer in spec/support/Gemfile
- Ensure that the testing app does not exist: `bundle exec rake engine_cart:clean`
- Set Rails version you want to test against. For example:
- `export RAILS_VERSION=5.1.4`
- Ensure that the correct version of Rails is installed: `bundle update`
- Build test app: `bundle exec rake engine_cart:generate`
- And run tests: `bundle exec rake ci`
## Releasing
1. `bundle install`
2. Increase the version number in `lib/hydra/role_management/version.rb`
3. Increase the same version number in `.github_changelog_generator`
4. Update `CHANGELOG.md` by running this command:
```
github_changelog_generator --user samvera --project hydra-role-management --token YOUR_GITHUB_TOKEN_HERE
```
5. Commit these changes to the main branch
6. Run `rake release`
# Acknowledgments
This software has been developed by and is brought to you by the Samvera community. Learn more at the [Samvera website](http://samvera.org/).
