{"action":"created","issue":{"url":"https://api.github.com/repos/openSUSE/daps/issues/347","repository_url":"https://api.github.com/repos/openSUSE/daps","labels_url":"https://api.github.com/repos/openSUSE/daps/issues/347/labels{/name}","comments_url":"https://api.github.com/repos/openSUSE/daps/issues/347/comments","events_url":"https://api.github.com/repos/openSUSE/daps/issues/347/events","html_url":"https://github.com/openSUSE/daps/issues/347","id":136701700,"number":347,"title":"Make Product Names and Titles \"Shareable\"","user":{"login":"tomschr","id":1312925,"avatar_url":"https://avatars.githubusercontent.com/u/1312925?v=3","gravatar_id":"","url":"https://api.github.com/users/tomschr","html_url":"https://github.com/tomschr","followers_url":"https://api.github.com/users/tomschr/followers","following_url":"https://api.github.com/users/tomschr/following{/other_user}","gists_url":"https://api.github.com/users/tomschr/gists{/gist_id}","starred_url":"https://api.github.com/users/tomschr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomschr/subscriptions","organizations_url":"https://api.github.com/users/tomschr/orgs","repos_url":"https://api.github.com/users/tomschr/repos","events_url":"https://api.github.com/users/tomschr/events{/privacy}","received_events_url":"https://api.github.com/users/tomschr/received_events","type":"User","site_admin":false},"labels":[{"id":182705014,"url":"https://api.github.com/repos/openSUSE/daps/labels/enhancement","name":"enhancement","color":"84b6eb","default":true},{"id":182705015,"url":"https://api.github.com/repos/openSUSE/daps/labels/help%20wanted","name":"help wanted","color":"159818","default":true},{"id":182860431,"url":"https://api.github.com/repos/openSUSE/daps/labels/infrastructure","name":"infrastructure","color":"ededed","default":false},{"id":182705017,"url":"https://api.github.com/repos/openSUSE/daps/labels/question","name":"question","color":"cc317c","default":true},{"id":182751261,"url":"https://api.github.com/repos/openSUSE/daps/labels/validation","name":"validation","color":"ededed","default":false}],"state":"open","locked":false,"assignee":{"login":"tomschr","id":1312925,"avatar_url":"https://avatars.githubusercontent.com/u/1312925?v=3","gravatar_id":"","url":"https://api.github.com/users/tomschr","html_url":"https://github.com/tomschr","followers_url":"https://api.github.com/users/tomschr/followers","following_url":"https://api.github.com/users/tomschr/following{/other_user}","gists_url":"https://api.github.com/users/tomschr/gists{/gist_id}","starred_url":"https://api.github.com/users/tomschr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomschr/subscriptions","organizations_url":"https://api.github.com/users/tomschr/orgs","repos_url":"https://api.github.com/users/tomschr/repos","events_url":"https://api.github.com/users/tomschr/events{/privacy}","received_events_url":"https://api.github.com/users/tomschr/received_events","type":"User","site_admin":false},"assignees":[{"login":"tomschr","id":1312925,"avatar_url":"https://avatars.githubusercontent.com/u/1312925?v=3","gravatar_id":"","url":"https://api.github.com/users/tomschr","html_url":"https://github.com/tomschr","followers_url":"https://api.github.com/users/tomschr/followers","following_url":"https://api.github.com/users/tomschr/following{/other_user}","gists_url":"https://api.github.com/users/tomschr/gists{/gist_id}","starred_url":"https://api.github.com/users/tomschr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tomschr/subscriptions","organizations_url":"https://api.github.com/users/tomschr/orgs","repos_url":"https://api.github.com/users/tomschr/repos","events_url":"https://api.github.com/users/tomschr/events{/privacy}","received_events_url":"https://api.github.com/users/tomschr/received_events","type":"User","site_admin":false}],"milestone":null,"comments":1,"created_at":"2016-02-26T13:45:45Z","updated_at":"2016-11-29T17:25:24Z","closed_at":null,"body":"(Original idea from Tanja)\n### Problem\n\nCurrently, all our doc repos contain an `entity-decl.ent` file. This file contains lots of product names and titles. When product names or titles change, all files should be updated (in theory).\n\nAt the moment we don't have a file which can be shared across different products and repos.\n### Properties\n\nIt is assumed that the product parts change only, when\n- a new product is requested, or\n- an existing product changes its product name, title, or both (very rarely)\n\nThe  `entity-decl.ent` file needs to be splitted into a part with and without the product parts. The product part should contain only text (no elements to avoid any DocBook 4 vs. 5 problems) and no version number (this should go into the corresponding XML file).\n### Possible Solutions\n1. Using an URI in  `entity-decl.ent`, referring to the product specific parts:\n   \n   ``` xml\n   <!-- file: entity-decl.ent -->\n   <!ENTITY % products SYSTEM \"http://www.example.org/common/products-decl.ent\">\n   % products;\n   ```\n2. Using [Git Submodules](http://www.git-scm.com/book/en/v2/Git-Tools-Submodules)\n3. Use DAPS \"Branding\" project for the common content, as is done in Publican's \"Brands\" concept  (this would necessitate getting our Hack Week concept for DAPS shippable).\n4. Something else?\n### Discussion\n1. Using an URI in the `entity-decl.ent`\n   \n   **Pros**: `products-decl.ent` will be downloaded when it's needed. It's always up-to-date.\n   **Cons**: You can't build the product without Internet connection\n2. Using Git Submodules\n   \n   **Pros**: Just another Git repo; doesn't need to be updated often, but could be (maybe?) done via Git hooks\n   **Cons**: You need to actively update the submodule dir (maybe Git hooks come to the rescue?)\n\n@taroth21, @sknorr: Anything to add from your side?\n\n---\n\n[**edit by sknorr** Under \"Possible Solutions\", added idea of using \"brands\".]\n"},"comment":{"url":"https://api.github.com/repos/openSUSE/daps/issues/comments/263637699","html_url":"https://github.com/openSUSE/daps/issues/347#issuecomment-263637699","issue_url":"https://api.github.com/repos/openSUSE/daps/issues/347","id":263637699,"user":{"login":"sknorr","id":5476547,"avatar_url":"https://avatars.githubusercontent.com/u/5476547?v=3","gravatar_id":"","url":"https://api.github.com/users/sknorr","html_url":"https://github.com/sknorr","followers_url":"https://api.github.com/users/sknorr/followers","following_url":"https://api.github.com/users/sknorr/following{/other_user}","gists_url":"https://api.github.com/users/sknorr/gists{/gist_id}","starred_url":"https://api.github.com/users/sknorr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sknorr/subscriptions","organizations_url":"https://api.github.com/users/sknorr/orgs","repos_url":"https://api.github.com/users/sknorr/repos","events_url":"https://api.github.com/users/sknorr/events{/privacy}","received_events_url":"https://api.github.com/users/sknorr/received_events","type":"User","site_admin":false},"created_at":"2016-11-29T17:25:24Z","updated_at":"2016-11-29T17:25:24Z","body":"From the duplicate (issue #349), cwickert:\r\n\r\n> ATM we have all entities defined in each and every project. We should look into splitting out at least global entities and project specific entities. A more fine-grained setup would be something like:\r\n> - `global.ent`: user names and other *really really global stuff\r\n> - `network.ent`: host and domain names etc.\r\n> - `products.ent`: product names\r\n> - optional specific declarations:\r\n>   - `cloud.ent`,\r\n>   - ...\r\n> - `project.ent`: purely project-specific entities for that particular project\r\n> \r\n> Note: First appearance of an entity overwrites later appearances.\r\n> \r\n> Open questions:\r\n> 1. Should we allow overwriting entities in projects?\r\n> 2. Specific entities should include more general ones, so you only need to include `project.ent` which then includes all others. On the other hand many projects should not require a `project.ent`, so we cannot rely on it's presence.\r\n> 3. Version control: The 'master' copy of each file should be under version control, but how exactly do we do this? git submodule? Simpy copy files around?"}}
{"actor":{"display_login":"sknorr"}}