diff options
Diffstat (limited to 'spec-qdp/spec')
-rw-r--r-- | spec-qdp/spec/qdp-copyrights-by-license.yml | 30 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-directory-state-exclude-role.yml | 25 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-directory-state-generic.yml | 22 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-directory-state-pattern-list.yml | 16 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-directory-state-patterns.yml | 37 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-directory-state.yml | 48 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-file-state-list.yml | 16 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-file-state.yml | 30 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-optional-sha512.yml | 20 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-repository-role.yml | 23 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-repository.yml | 50 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-sha512.yml | 18 | ||||
-rw-r--r-- | spec-qdp/spec/qdp-unpacked-archive.yml | 46 |
13 files changed, 381 insertions, 0 deletions
diff --git a/spec-qdp/spec/qdp-copyrights-by-license.yml b/spec-qdp/spec/qdp-copyrights-by-license.yml new file mode 100644 index 00000000..fbed9d61 --- /dev/null +++ b/spec-qdp/spec/qdp-copyrights-by-license.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + If the value is present, then it shall be the licensing description. + spec-type: str + files: + description: | + If the value is present, then it shall be the list of license files. + spec-type: list-str + description: | + This set of attributes contains associated copyrights by license. + generic-attributes: + description: null + key-spec-type: spdx-license-identifier + value-spec-type: copyrights + mandatory-attributes: none +spec-name: Copyrights by License +spec-type: qdp-copyrights-by-license +type: spec diff --git a/spec-qdp/spec/qdp-directory-state-exclude-role.yml b/spec-qdp/spec/qdp-directory-state-exclude-role.yml new file mode 100644 index 00000000..07e5aaaf --- /dev/null +++ b/spec-qdp/spec/qdp-directory-state-exclude-role.yml @@ -0,0 +1,25 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: role + spec-value: directory-state-exclude + uid: link +spec-description: null +spec-example: null +spec-info: + dict: + attributes: {} + description: | + It defines the directory state exclude role of links. Such links are + used to exclude the files of the referenced + ${qdp-directory-state:/spec-name} from the pattern defined directory + state. + mandatory-attributes: all +spec-name: Directory State Exclude Link Role +spec-type: qdp-directory-state-exclude-role +type: spec diff --git a/spec-qdp/spec/qdp-directory-state-generic.yml b/spec-qdp/spec/qdp-directory-state-generic.yml new file mode 100644 index 00000000..0bad0795 --- /dev/null +++ b/spec-qdp/spec/qdp-directory-state-generic.yml @@ -0,0 +1,22 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: directory-state-type + spec-value: generic + uid: qdp-directory-state +spec-description: null +spec-example: null +spec-info: + dict: + attributes: {} + description: | + This set of attributes specifies a generic directory state. + mandatory-attributes: all +spec-name: Generic Directory State Item Type +spec-type: qdp-directory-state-generic +type: spec diff --git a/spec-qdp/spec/qdp-directory-state-pattern-list.yml b/spec-qdp/spec/qdp-directory-state-pattern-list.yml new file mode 100644 index 00000000..b0cafee3 --- /dev/null +++ b/spec-qdp/spec/qdp-directory-state-pattern-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: qdp-directory-state-patterns +spec-name: Directory State Pattern List +spec-type: qdp-directory-state-pattern-list +type: spec diff --git a/spec-qdp/spec/qdp-directory-state-patterns.yml b/spec-qdp/spec/qdp-directory-state-patterns.yml new file mode 100644 index 00000000..4cbcde6d --- /dev/null +++ b/spec-qdp/spec/qdp-directory-state-patterns.yml @@ -0,0 +1,37 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020, 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + include: + description: | + It shall be a Python ``fnmatch`` pattern. If a file path relative to + the base directory of the directory state matches with the pattern, + then the file is added to the directory state if it is not rejected + by an exclude pattern. + spec-type: str + exclude: + description: | + It shall be a list of Python ``fnmatch`` patterns. If a file path + matches with the pattern, then the file is not added to the directory + state. The file paths are absolute paths relative to the base + directory of the directory state. For example, if the directory + state has a base of ``/base`` and a file to include has the path + ``/base/abc``, then the file path ``/abc`` is used to match with the + exclude patterns. + spec-type: list-str + description: | + This set of attributes specifies a set of patterns used to load the file + list of the directory state. + mandatory-attributes: all + none: null +spec-name: Directory State Patterns +spec-type: qdp-directory-state-patterns +type: spec diff --git a/spec-qdp/spec/qdp-directory-state.yml b/spec-qdp/spec/qdp-directory-state.yml new file mode 100644 index 00000000..838eeaf7 --- /dev/null +++ b/spec-qdp/spec/qdp-directory-state.yml @@ -0,0 +1,48 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020, 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: qdp-type + spec-value: directory-state + uid: qdp-root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + copyrights-by-license: + description: null + spec-type: qdp-copyrights-by-license + directory: + description: | + It shall be the path to the directory. A variable substitution is + performed on the value. For example, you can use + ``$${/variant:/build-directory}/some/path/in/build/directory`` or + ``$${/variant:/deployment-directory}/some/path/in/deployment/directory``. + spec-type: str + directory-state-type: + description: | + It shall be the directory state type. + spec-type: name + patterns: + description: null + spec-type: qdp-directory-state-pattern-list + files: + description: null + spec-type: qdp-file-state-list + hash: + description: | + If the value is present, then it shall be the hash of the file state + list and the directory path, otherwise the directory state is + invalid. + spec-type: qdp-optional-sha512 + description: | + This set of attributes specifies a directory state. + mandatory-attributes: all +spec-name: Directory State Item Type +spec-type: qdp-directory-state +type: spec diff --git a/spec-qdp/spec/qdp-file-state-list.yml b/spec-qdp/spec/qdp-file-state-list.yml new file mode 100644 index 00000000..963a4d42 --- /dev/null +++ b/spec-qdp/spec/qdp-file-state-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: qdp-file-state +spec-name: File State List +spec-type: qdp-file-state-list +type: spec diff --git a/spec-qdp/spec/qdp-file-state.yml b/spec-qdp/spec/qdp-file-state.yml new file mode 100644 index 00000000..b3dd8489 --- /dev/null +++ b/spec-qdp/spec/qdp-file-state.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2022 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + file: + description: | + It shall be the path to the file. A variable substitution is + performed on the value. For example, you can use + ``$${/variant:/build-directory}/some/path/in/build/file`` or + ``$${/variant:/deployment-directory}/some/path/in/deployment/file``. + spec-type: str + hash: + description: | + If the value is present, then it shall be the hash of the file, + otherwise the file state is invalid. + spec-type: qdp-optional-sha512 + description: | + This set of attributes specifies a file state. + mandatory-attributes: all +spec-name: File State +spec-type: qdp-file-state +type: spec diff --git a/spec-qdp/spec/qdp-optional-sha512.yml b/spec-qdp/spec/qdp-optional-sha512.yml new file mode 100644 index 00000000..c3291cd4 --- /dev/null +++ b/spec-qdp/spec/qdp-optional-sha512.yml @@ -0,0 +1,20 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + none: null + str: + assert: + - re: ^[A-Za-z0-9+_=-]{88}$ + description: | + If the value is present, then it shall be a SHA512 hash value encoded in + base64url. +spec-name: Optional SHA512 +spec-type: qdp-optional-sha512 +type: spec diff --git a/spec-qdp/spec/qdp-repository-role.yml b/spec-qdp/spec/qdp-repository-role.yml new file mode 100644 index 00000000..bcba5cff --- /dev/null +++ b/spec-qdp/spec/qdp-repository-role.yml @@ -0,0 +1,23 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: role + spec-value: repository + uid: link +spec-description: null +spec-example: null +spec-info: + dict: + attributes: {} + description: | + It defines the repository role of links and is used to define the + deployed repositories of a package variant. + mandatory-attributes: all +spec-name: Repository Link Role +spec-type: qdp-repository-role +type: spec diff --git a/spec-qdp/spec/qdp-repository.yml b/spec-qdp/spec/qdp-repository.yml new file mode 100644 index 00000000..f4e27795 --- /dev/null +++ b/spec-qdp/spec/qdp-repository.yml @@ -0,0 +1,50 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020, 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: directory-state-type + spec-value: repository + uid: qdp-directory-state +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + branch: + description: | + It shall be a branch in the source repository for the commit. + spec-type: str + commit: + description: | + It shall be the commit of the branch in the source repository. + spec-type: qdp-git-hash + description: + description: | + It shall be the description of the repository. + spec-type: str + origin-branch: + description: | + It shall be the origin branch name. + spec-type: optional-str + origin-commit: + description: | + It shall be the commit of the origin branch. + spec-type: qdp-optional-git-hash + origin-commit-url: + description: | + It shall be the URL of the commit web page at the origin. + spec-type: optional-str + origin-url: + description: | + It shall be the repository URL of the origin. + spec-type: optional-str + description: | + This set of attributes specifies a repository. + mandatory-attributes: all +spec-name: Repository Item Type +spec-type: qdp-repository +type: spec diff --git a/spec-qdp/spec/qdp-sha512.yml b/spec-qdp/spec/qdp-sha512.yml new file mode 100644 index 00000000..4eec0c80 --- /dev/null +++ b/spec-qdp/spec/qdp-sha512.yml @@ -0,0 +1,18 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + str: + assert: + - re: ^[A-Za-z0-9+_=-]{88}$ + description: | + It shall be a SHA512 hash value encoded in base64url. +spec-name: SHA512 +spec-type: qdp-sha512 +type: spec diff --git a/spec-qdp/spec/qdp-unpacked-archive.yml b/spec-qdp/spec/qdp-unpacked-archive.yml new file mode 100644 index 00000000..c808770a --- /dev/null +++ b/spec-qdp/spec/qdp-unpacked-archive.yml @@ -0,0 +1,46 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2023 embedded brains GmbH & Co. KG +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: directory-state-type + spec-value: unpacked-archive + uid: qdp-directory-state +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + It shall be the description of the unpacked archive. + spec-type: str + archive-file: + description: | + It shall be the archive file. + spec-type: str + archive-hash: + description: | + It shall be the archive hash. + spec-type: qdp-sha512 + archive-patches: + description: | + It shall be the list of patches applied to the archive. + spec-type: any + archive-symbolic-links: + description: | + It shall be the list of symbolic links added to the archive. + spec-type: any + archive-url: + description: | + It shall be the archive URL. + spec-type: optional-str + description: | + This set of attributes specifies an unpacked archive. + mandatory-attributes: all +spec-name: Unpacked Archive Item Type +spec-type: qdp-unpacked-archive +type: spec |