Always use `attribute` to define the product
What does this MR do?
The idea is that we define the attributes on the factory, and make them lazily loaded. The factory is free to use them, and so is the product. The product will just load everything from the factory.
This eliminate the difference between factory and product.
The product is now just a delegation to the factory, without
having fabricate!
and other methods.
TODO:
-
Update the documentations carefully -
Make an EE version https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/8036 -
Update the commit messages to contain the MR description and/or documentations contents
What are the relevant issue numbers?
This will also solve gitlab-qa#235 (closed)
Does this MR meet the acceptance criteria?
Edited by Lin Jen-Shin