Released on July 27, 2023
New Features
DevOps Dashboard
The homepage of the DevOps Portal is now a real dashboard. Just select the project you want to work on and enjoy a list of deep links into the tools to get to the most important places. The chosen project is automatically remembered across sessions.
The availability of the tiles depends on the tools which are included in your DevOps-as-a-Service instance. If the logged-in user doesn't have a license assigned for one of the tools, the tile is still displayed, but the links will be not clickable.
Role Management on Projects page
On the Projects page, individual users can be selected to see their roles in the listed projects. Furthermore, bulk assignment of roles in multiple projects to the selected user is now supported.
To see only your own roles, simply select again your user, which is always at the very top of the list.
Set reasonable defaults on Bitbucket projects
The following defaults are used for freshly created projects, but can be also automatically set for existing projects by calling Resync on the project or by applying Edit and Save on the project.
The Reject Force Push workflow hook is enabled.
The merge checks No 'needs work' status and No incomplete tasks are enabled.
For permanent exceptions, Project Admins can still override the settings in one or multiple git repositories of the project by choosing explicitly disabled or enabled instead of inheriting from the Project settings.
For non-permanent exceptions, Project Admins can also change the settings globally for the project, but in this case they will be reset on the next Project Resync.
Automated enablement of safe Pull-request builds on Jenkins
In the previous release 1.3.2 enabling safe Pull-request builds was only available for freshly created projects. Now, the settings of existing projects are also automatically adjusted when a Resync is performed on the project or when Edit and Save are applied on the project.
- Pull-requests opened on Bitbucket are automatically discovered and built on Jenkins. Previously, only real branches were discovered and built.
- A Pull-request is simulating the merge from one branch to another, but takes place on Jenkins only. To really merge the Pull-request to the destination branch, one of the reviewers has to press the Merge button on Bitbucket when the review and Pull-request builds are fine.
- The Discover branches strategy is set to all branches to prevent losing build information of the source branch. Instead, the Jenkins Shared Library is avoiding building new commits to the source branch if a Pull-request was already opened. This reduces build work on Jenkins agents to 50%.
- In Scan Organization Folder Triggers the Interval for Periodically if not otherwise run is reduced from the Jenkins default of 1 day to 1 hour for quicker discovery of new git repositories. We don't recommend to use lower values since Jenkins will be otherwise busy the whole time scanning for new git repositories. If you have created a new git repository, you can at any time click on Scan Organization Folder Now in the Bitbucket Project Folder. This will trigger a manual scan for git repositories. All of this is not required to discover new branches or new commits. Both of these changes are automatically propagated from Bitbucket to Jenkins.
Automated password rotation for implicitly created technical users
DevOps Portal implicitly creates two technical users on each project creation. One is used by Jenkins to pull git repositories from the SCM and one is used by Jenkins to push built artifacts to Nexus. The mechanism was changed to use very strong passwords with 256 random bits. In addition, the passwords are now automatically changed in all 3 tools, every time when the Project is resynced or an Edit and Save is applied on the project. Due to the increased security, we recommend running now a Resync on all your projects and repeat it at least once per year.
Upcoming Features
- Prepared roll-out of the Competitive Toolchain featuring
- Automated password rotation as mentioned above is also applied to tools of the Competitive Toolchain.
- Prepared roll-out of new Portal role Creator. Portal Creators will have more power than standard Portal Users, but less than Portal Admins. The feature will be enabled in a future release.
Enhancements
- For any pending synchronization, more detailed information was added. The available values are now: ID, Entity, Operation, JSON, URL, Message, Entity Id, timestamp of last attempt, timestamp of first attempt and number of retries. In addition, the process of informing the service desk of DevOps-as-a-Service was improved to allow faster diagnosis of complex problems.
- New icons have been created for the DevOps portal and the DevOps tools. Where possible, they are now used as favicons or on the new Dashboard as mentioned above.
- Due to security considerations, the possible uploads to Terms and Conditions has been limited. The only accepted format was set to PDF. The maximum file-size is set to 2MB. Invalid PDFs or PDFs which contain executables will not be accepted.
- The loading time for the User and Tech User page have been improved for large amounts of entries.
Improvements
- Project Admins can change roles or permissions for project members in the tools Jira, Confluence and Bitbucket. A Project Resync project will reset modified roles or permissions of project members to the exact roles like defined in the Portal. This was already working for Jira and Bitbucket and has been added now for Confluence, too.
- Role Management on Nexus is now faster.
- The T-Systems logo has been updated to the current corporate design
- Added automated testing for SonarQube
- Added backend unit tests for Jira
- Added earlier automated test runs on backend changes
- Unused library removed.
- All pop-up messages are now displayed near the bottom of the page.
- To increase security, some read-only API calls have been removed it not necessary for the operation of the portal.
- Removed support for old Rancher 1.6.
- The minimum project name length was set to 2 characters, since 1 character will not properly work with Jira.
- German texts for the password reset procedure have been improved.
Bugfixes
- When a user was moved to another organization, it was not correctly updated in the LDAP server. This could lead later to pending syncs.
- Even on wide windows, the Account menu was cut by some pixels on the right. The menu strip was adapted to fix the problem.
- Timestamps on some entity detail pages are no longer wrapped if not necessary.
- Clickboxes for radio buttons and checkboxes were too large on some detail pages and have been adjusted.
- When a user was locked, its position in the displayed list could change. This is now avoided by applying additional sort criteria.
- When a tech user was created or deleted, a possible active search filter was not correctly applied to the entries on the page.
- For some rare circumstances, getting a pending sync for Gitlab is now avoided.