OneDev is an open source project hosted at https://github.com/theonedev/onedev
Since last announcement, we got bunch of feedbacks and this version ships some of them. Thank you for getting OneDev even better!
OpenID connect integration
With OIDC integration, it is now possible to login via GitHub, Gmail, Okta, or any other OIDC compliant identify providers. Besides authentication, this integration can also authorize users with appropriate permissions based on group claims. Check usage scenarios here and here for details
Clone with custom credential in CI job
For security reason, OneDev clones source in CI job with a default credential which does not have permission to access other projects, or push back commits. To get additional permissions, one has to define custom job secrets accessible to certain branches, and use these secrets in CI job to clone source. Refer to usage scenario here for example setup
Reworked pull request workflow
Instead of merging pull requests automatically after getting all approvals from revewers, assignee has to merge them manually to ensure responsibilities, as well as crafting commit message if necessary. Also merged commits from target branch will be excluded when displaying incremental pull request changes to make it easier to understand
Show review and build status in pull request list
To help users getting a better glance of what happened in pull requests, review and build status now get displayed in pull request list
UI to compose complex sorts
Previously one has to use order by clause to sort issues, builds and pull requests. Now this task is easier via a smart sort widget. Just select fields to order, and OneDev will compose the query automatically
Publish and render markdown in build
Besides ordinary artifacts and html reports, one can also publish markdown in a build process and get it rendered in a separate build tab to make important information explicit
Rule to transit inactive issues to specified state
Sometimes it is desirable to transit inactive issues to a certain state, for instance to mark it idle and notify relevant participants, and finally close it if no one cares about it. Now this is possible via a custom state transition rule
Top comments (0)