Enable work items beta feature for gitlab 18.5 ee

I need to build multilayer requirements management system and would like to do it in the gitlab.
I have updated in my company self-managed server to the version 18.5.1. And see that Requirements feature is going to be deprecated soon. Also anyway it is not supported multilayers and is not available for the groups. Documentation proposed to use Work Items feature instead. I run the gitlab console and set feature with Feature.enable(:work_item_epics) since we are using gitlab-ee. According to the doc in the menu should appear Plan → Work Items instead of Plan → Issues/Epics.
But even after gitlab restart I still see Issues and Epics and not Work Items. I tried to open browser incognito mode to check the caching issue and see the same state, so this is not cache problem.
Could you advise how to enable Work Items functionality for self managed Gitlab server 18.5?
The documentation I used - Work items | GitLab Docs

Problem to solve

Enable work items feature in the gitlab 18.5.1 ee.

Steps to reproduce

  1. Run gitlab-rails console
  2. Set feature toggle with Feature.enable(:work_item_epics)
  3. Check the results in the UI
  4. Still there is no Plan → Work Items. But Plan → Issues and Plan → Epics are exists.

Configuration

Provide screenshots from the GitLab UI showing relevant configuration, if applicable.
On self-managed instances, add the relevant configuration settings or changes.

Versions

Please add an x whether options apply, and add the version information.

  • Self-managed
  • GitLab.com SaaS
  • Dedicated

Versions

  • System information
    System: Debian 13
    Proxy: no
    Current User: git
    Using RVM: no
    Ruby Version: 3.2.8
    Gem Version: 3.7.1
    Bundler Version:2.7.1
    Rake Version: 13.0.6
    Redis Version: 7.2.10
    Sidekiq Version:7.3.9
    Go Version: unknown

  • GitLab information
    Version: 18.5.1-ee
    Revision: a01b2eeb76d
    Directory: /opt/gitlab/embedded/service/gitlab-rails
    DB Adapter: PostgreSQL
    DB Version: 16.10

  • GitLab Shell
    Version: 14.45.3
    Repository storages:

    • default: unix:/var/opt/gitlab/gitaly/gitaly.socket
      GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell
  • Gitaly

    • default Address: unix:/var/opt/gitlab/gitaly/gitaly.socket
    • default Version: 18.5.1
    • default Git Version: 2.50.1

Helpful resources

  1. Check the FAQ for helpful documentation, issues/bugs/feature proposals, and troubleshooting tips.
  2. Before opening a new topic, make sure to search for keywords in the forum search
  3. Check the GitLab project for existing issues. If you encounter a bug, please create a bug report issue.
  4. Review existing troubleshooting docs.

Thanks for taking the time to be thorough in your request, it really helps! :blush:

Are you a free Gitlab user or do you have a subscription? Reason I ask, is there is a difference into which feature you enable. From the docs link you posted:

So if you have a Premium or Ultimate subscription, then the option you enabled would work. However, if you do not have either of those subscriptions it isn’t going to work. In which case you must enable the namespace_level_work_items option on your Gitlab EE install.

I have a license for ultimate edition. Tried to submit a ticket to support, but need to handle assigning my account with the company.
I saw that there are 2 different flags. And we had the gitlab-ce in the past, but got a license and installed gitlab-ee on the same server and applied the license. So, I tried both flags one by one and simultaneously. But without any changes. Still do not see new Work Items menu. Also, I tried incognito mode in the browser to check that this is not a cache issue. And tried to do restart and rebuild. Even though they should not be required for enabling features. But still without the success result.

OK, I’m going to try something on my lab environment now to see if I can figure out what’s going on. I’ll update shortly if I find a solution.

As I’m only using the free version in my lab, for testing purposes I could only do this:

irb(main):001> Feature.enable(:namespace_level_work_items)
WARNING: Understand the stability and security risks of enabling in-development features with feature flags.
See https://docs.gitlab.com/ee/administration/feature_flags.html#risks-when-enabling-features-still-in-development for more information.
=> true

irb(main):003> Feature.enabled?(:namespace_level_work_items)
=> true

So the beta option is there and enabled accordingly. Also the options didn’t appear for me in the web ui, and I’ve also subsequently run:

gitlab-ctl reconfigure
gitlab-ctl restart
systemctl restart gitlab-runsvdir

I’ve also cleared redis cache:

gitlab-rake cache:clear

and tried refreshing browser and still same result - the option is not enabled.

I also ran db migrations just in case something else was needed but didn’t get anything successful from that either.

I would say probably due to the fact it’s beta, it’s not completely working as it should be, and probably we need to wait until this appears sometime in the near future as a more stable option.

You could potentially search here to see if an issue exists, to add your feedback to on this problem. If no issue, then perhaps open one to see if one of the Gitlab Devs can look at it and get it working properly: Issues · GitLab.org / GitLab · GitLab

Work items is the underlying framework, exposed as different known types - issues, epics, etc. The unification into work items allows for epic assignees, or description templates, for example.

The parent entry for all work items is [INITIATIVE] Work Items (#6033) · Epics · Epics · GitLab.org · GitLab

Requirements migration to the work items framework is tracked in Requirements & Test Management Migration to Work Items (#9923) · Epics · Epics · GitLab.org · GitLab and status Legacy Issue Code Cleanup & Tech Debt Removal (#18652) · Epics · Epics · GitLab.org · GitLab

1 Like

Ok, so we made it work enabling a set of feature toggles. Unfortunately, current functionality is still not covering all required for IEC 62304. E.g. I could not have custom issue types and custom fields. Also, requirements have only flat structure without any labels and priority/risk fields. IEC 62304 requires to build full traceability from System Requirements through Software/Software Subsystem requirements to Software Items and Test Cases with Test Results.
So, for now we made a decision to use external tracking system for this purpose.

Thanks. I’d suggest adding your feedback into the requirements epic for product managers to see and engage with.

1 Like