summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-11 21:32:54 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-11 21:32:54 +0000
commit5a4f1047f2176bb4a4a929c34539f93dd45e5fc2 (patch)
tree23214a7daf8b7645748213dab7469c9135e2905f
parent6b72b16d3861a3a0c46b693bafeaf7f7af42b4a2 (diff)
automatic import of python-cas
-rw-r--r--.gitignore1
-rw-r--r--python-cas.spec271
-rw-r--r--sources1
3 files changed, 273 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..5b9694a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cas-1.0.10.tar.gz
diff --git a/python-cas.spec b/python-cas.spec
new file mode 100644
index 0000000..6d231ca
--- /dev/null
+++ b/python-cas.spec
@@ -0,0 +1,271 @@
+%global _empty_manifest_terminate_build 0
+Name: python-cas
+Version: 1.0.10
+Release: 1
+Summary: Chaos Automation System
+License: mit
+URL: https://github.com/ChaosInitiative/CAS
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/86/e9/b03b3162dae5e3ae808437e4665695bcbd519af41758d7348ad41b83bf69/cas-1.0.10.tar.gz
+BuildArch: noarch
+
+Requires: python3-jsonschema
+Requires: python3-simpleeval
+Requires: python3-appdirs
+Requires: python3-dotmap
+Requires: python3-tqdm
+Requires: python3-vdf
+Requires: python3-requests
+
+%description
+# Chaos Automation System
+
+Chaos Automation System (CAS) is a toolkit for automating complex sequences of tasks; generally, Source engine tasks.
+
+## Usage
+CAS, by default, expects a certain folder structure to be present. You should have a root folder for your project, containing a `content` folder and a `game` folder. The former contains your source content, while your latter contains your compiled assets and binaries.
+
+To configure which assets to build, an `cas.json` file must be present in your `content` folder. An example of this is present in the `examples` folder of this repository, which you can copy if you want to provide a template for your project.
+
+You must run CAS from inside your project's root tree; if you need to run it from somewhere else, use the `--path` argument.
+
+Example:
+```
+casbuild --build-category assets
+```
+
+## Configuration
+CAS executes a series of discrete programs called subsystems.
+An example of a subsystem is `vpk` - this allows packing several files into one or more VPK archives.
+
+### Build Types and Categories
+The **build type** (`--build-type`) selects the type of the build you want to perform. This may be one of three values: trunk, staging, or release, and mirrors a multi-branch Git philosophy. The behaviour of this differs depending on the asset or subsystem implementation.
+
+The **build categories** (`--build-categories`) define whether assets should be built and what subsystems should run, if any. The default is to build all categories if one is not explicitly specified. If a category different from `assets` is specified, assets will not be built. The categories of a subsystem can be defined with the `categories` key.
+
+### Expressions and Conditions
+CAS has support for conditional statements to include or exclude segments of configuration whenever a condition is met. Specify the conditions inside the block you want to set as a list with the special `@conditions` key.
+
+
+CAS also has support for custom expressions with `@expressions`, to dynamically modify parts of configuration on the fly. Specify this as a set with each key you want to modify. It uses the same syntax as conditions.
+
+Example:
+```json
+"module": "cas.subsystems.syncfolder",
+"category": "publish",
+"options": {
+ "from": "$(path.root)/game",
+ "to": "$(path.root)/publish.tmp",
+
+ "create": true,
+ "files": [ "!.git" ],
+
+ "@conditions": ["args.build_type != 'trunk'"]
+}
+```
+
+Note that expressions are always evaluated before conditions in the same block.
+
+### Local scope
+Inside conditions and macros a specific set of names are available in the local scope:
+- `parent`, the parent object of this value
+- `context`, the current resolver scope
+- `path`, `args`, `assets`, and `subsystems` from the configuration file
+- `env`, a dict containing `platform`, the system platform, and `cpu_count`, the number of system CPUs
+
+## Installation
+You can install CAS with `pip`. Example: `python3 -m pip install cas`
+
+## Development
+- To install, run `python3 ./setup.py develop --user`.
+- To remove the development link, run `python3 ./setup.py develop --user -u`.
+- To publish to PyPi, run `publish.sh`.
+
+
+
+
+%package -n python3-cas
+Summary: Chaos Automation System
+Provides: python-cas
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-cas
+# Chaos Automation System
+
+Chaos Automation System (CAS) is a toolkit for automating complex sequences of tasks; generally, Source engine tasks.
+
+## Usage
+CAS, by default, expects a certain folder structure to be present. You should have a root folder for your project, containing a `content` folder and a `game` folder. The former contains your source content, while your latter contains your compiled assets and binaries.
+
+To configure which assets to build, an `cas.json` file must be present in your `content` folder. An example of this is present in the `examples` folder of this repository, which you can copy if you want to provide a template for your project.
+
+You must run CAS from inside your project's root tree; if you need to run it from somewhere else, use the `--path` argument.
+
+Example:
+```
+casbuild --build-category assets
+```
+
+## Configuration
+CAS executes a series of discrete programs called subsystems.
+An example of a subsystem is `vpk` - this allows packing several files into one or more VPK archives.
+
+### Build Types and Categories
+The **build type** (`--build-type`) selects the type of the build you want to perform. This may be one of three values: trunk, staging, or release, and mirrors a multi-branch Git philosophy. The behaviour of this differs depending on the asset or subsystem implementation.
+
+The **build categories** (`--build-categories`) define whether assets should be built and what subsystems should run, if any. The default is to build all categories if one is not explicitly specified. If a category different from `assets` is specified, assets will not be built. The categories of a subsystem can be defined with the `categories` key.
+
+### Expressions and Conditions
+CAS has support for conditional statements to include or exclude segments of configuration whenever a condition is met. Specify the conditions inside the block you want to set as a list with the special `@conditions` key.
+
+
+CAS also has support for custom expressions with `@expressions`, to dynamically modify parts of configuration on the fly. Specify this as a set with each key you want to modify. It uses the same syntax as conditions.
+
+Example:
+```json
+"module": "cas.subsystems.syncfolder",
+"category": "publish",
+"options": {
+ "from": "$(path.root)/game",
+ "to": "$(path.root)/publish.tmp",
+
+ "create": true,
+ "files": [ "!.git" ],
+
+ "@conditions": ["args.build_type != 'trunk'"]
+}
+```
+
+Note that expressions are always evaluated before conditions in the same block.
+
+### Local scope
+Inside conditions and macros a specific set of names are available in the local scope:
+- `parent`, the parent object of this value
+- `context`, the current resolver scope
+- `path`, `args`, `assets`, and `subsystems` from the configuration file
+- `env`, a dict containing `platform`, the system platform, and `cpu_count`, the number of system CPUs
+
+## Installation
+You can install CAS with `pip`. Example: `python3 -m pip install cas`
+
+## Development
+- To install, run `python3 ./setup.py develop --user`.
+- To remove the development link, run `python3 ./setup.py develop --user -u`.
+- To publish to PyPi, run `publish.sh`.
+
+
+
+
+%package help
+Summary: Development documents and examples for cas
+Provides: python3-cas-doc
+%description help
+# Chaos Automation System
+
+Chaos Automation System (CAS) is a toolkit for automating complex sequences of tasks; generally, Source engine tasks.
+
+## Usage
+CAS, by default, expects a certain folder structure to be present. You should have a root folder for your project, containing a `content` folder and a `game` folder. The former contains your source content, while your latter contains your compiled assets and binaries.
+
+To configure which assets to build, an `cas.json` file must be present in your `content` folder. An example of this is present in the `examples` folder of this repository, which you can copy if you want to provide a template for your project.
+
+You must run CAS from inside your project's root tree; if you need to run it from somewhere else, use the `--path` argument.
+
+Example:
+```
+casbuild --build-category assets
+```
+
+## Configuration
+CAS executes a series of discrete programs called subsystems.
+An example of a subsystem is `vpk` - this allows packing several files into one or more VPK archives.
+
+### Build Types and Categories
+The **build type** (`--build-type`) selects the type of the build you want to perform. This may be one of three values: trunk, staging, or release, and mirrors a multi-branch Git philosophy. The behaviour of this differs depending on the asset or subsystem implementation.
+
+The **build categories** (`--build-categories`) define whether assets should be built and what subsystems should run, if any. The default is to build all categories if one is not explicitly specified. If a category different from `assets` is specified, assets will not be built. The categories of a subsystem can be defined with the `categories` key.
+
+### Expressions and Conditions
+CAS has support for conditional statements to include or exclude segments of configuration whenever a condition is met. Specify the conditions inside the block you want to set as a list with the special `@conditions` key.
+
+
+CAS also has support for custom expressions with `@expressions`, to dynamically modify parts of configuration on the fly. Specify this as a set with each key you want to modify. It uses the same syntax as conditions.
+
+Example:
+```json
+"module": "cas.subsystems.syncfolder",
+"category": "publish",
+"options": {
+ "from": "$(path.root)/game",
+ "to": "$(path.root)/publish.tmp",
+
+ "create": true,
+ "files": [ "!.git" ],
+
+ "@conditions": ["args.build_type != 'trunk'"]
+}
+```
+
+Note that expressions are always evaluated before conditions in the same block.
+
+### Local scope
+Inside conditions and macros a specific set of names are available in the local scope:
+- `parent`, the parent object of this value
+- `context`, the current resolver scope
+- `path`, `args`, `assets`, and `subsystems` from the configuration file
+- `env`, a dict containing `platform`, the system platform, and `cpu_count`, the number of system CPUs
+
+## Installation
+You can install CAS with `pip`. Example: `python3 -m pip install cas`
+
+## Development
+- To install, run `python3 ./setup.py develop --user`.
+- To remove the development link, run `python3 ./setup.py develop --user -u`.
+- To publish to PyPi, run `publish.sh`.
+
+
+
+
+%prep
+%autosetup -n cas-1.0.10
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-cas -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.10-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..7b234d3
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+cde8f4f9fc694a3cafff89e4d454764b cas-1.0.10.tar.gz