aboutsummaryrefslogtreecommitdiff
path: root/src/deliverable.c
Commit message (Collapse)AuthorAgeFilesLines
* * Refactor delivery_index_wheel_artifacts to generate a dumb pypi indexJoseph Hunkeler2024-04-101-20/+68
| | | | * Injects --extra-index-url into deferred package installation command
* Fix new context nameJoseph Hunkeler2024-04-101-1/+1
|
* requirement_from_test() helper returns a pointer to a Test structureJoseph Hunkeler2024-04-101-59/+11
| | | | * Reduces complexity
* Move build/ directory creation into delivery_init_dirs_stage2Joseph Hunkeler2024-04-101-6/+8
|
* Consolidate INIFILE handling across the delivery contextJoseph Hunkeler2024-04-101-90/+71
| | | | * Break delivery_init() into separate populate_* functions
* Consolidate INIFILE handling across the delivery contextJoseph Hunkeler2024-04-101-13/+93
| | | | * Break delivery_init() into separate populate_* functions
* Rewriting the specfile is now a two stage processJoseph Hunkeler2024-04-101-80/+68
| | | | | * This allows for generating a template spec file that can consumed and manipulated by the Dockerfile, and OMC's machinery * To reduce complexity the tpl_* functions are not used.
* Add docker_validate_image_compression()Joseph Hunkeler2024-04-101-15/+4
|
* Add docker_sanitize_tag()Joseph Hunkeler2024-04-101-3/+5
| | | | * Replace invalid docker tag characters with dash ('-')
* Write conda installer to a temporary location instead of the current working ↵Joseph Hunkeler2024-04-101-17/+43
| | | | | | directory * Replaces function argument "delivery" with "ctx" for better consistency
* Increase buffer size to match input argument sizesJoseph Hunkeler2024-04-101-0/+1
|
* Filter disabled requirements from listJoseph Hunkeler2024-04-021-0/+14
| | | | * Temporary bandage. This needs to be its own function, and with real comment detection.
* Remove unused codeJoseph Hunkeler2024-04-021-4/+1
|
* Fix segfault in delivery dockerJoseph Hunkeler2024-04-021-2/+27
| | | | | * Generate docker tags if no tags are defined by the user * Only use a registry if one is defined by the user
* Refactor delivery_rewrite_spec()Joseph Hunkeler2024-04-021-37/+30
|
* When a wheel doesn't exist at the destination directory, move it there. ↵Joseph Hunkeler2024-04-021-1/+6
| | | | Otherwise, overwrite it with latest build
* Apply necessary changes to file_replace_text callsJoseph Hunkeler2024-04-021-7/+8
|
* Reenable installation via local wheelsJoseph Hunkeler2024-04-021-27/+33
|
* Reset HOME to point to a temporary directory to prevent contaminating the ↵Joseph Hunkeler2024-04-021-0/+7
| | | | user account's home directory with build artifacts, caches, and other artifacts
* Addresses undesired effect when based_on is in use.Joseph Hunkeler2024-04-021-1/+6
|
* Move system.{arch,platform} template registrations into delivery_init_platform()Joseph Hunkeler2024-04-021-0/+6
|
* Use new COE_CHECK_ABORTJoseph Hunkeler2024-04-021-4/+4
|
* More strlist operationsJoseph Hunkeler2024-04-021-5/+6
|
* Changes to strlist_*() functions:Joseph Hunkeler2024-04-021-10/+10
| | | | | Functions that modify the input StrList have been refactored to use `struct StrList **` instead of `struct StrList *`. * Fixes realloc error handling
* Add error handler for system.platformJoseph Hunkeler2024-03-241-1/+5
|
* Move deliver_init_tmpdir() next to path_store() call to clarify what is ↵Joseph Hunkeler2024-03-241-8/+9
| | | | happening to tmpdir
* Encapsulate the tox.ini generation.Joseph Hunkeler2024-03-221-8/+8
| | | | * This avoids telling the user we're about to modify the tox.ini if there's no real work to be done.
* Free resources on errorJoseph Hunkeler2024-03-221-4/+9
| | | | * TODO: Use a goto for this one.
* Increase command string size.Joseph Hunkeler2024-03-221-1/+1
| | | | * OMC_BUFSIZ should be long enough to accommodate larger than normal paths.
* Return on error immediately to avoid an invalid readJoseph Hunkeler2024-03-221-1/+0
|
* Remove the user-facing "${VAR}" notation.Joseph Hunkeler2024-03-221-10/+14
| | | | * runtime_* functions will continue to use this functionality in internally to support strings such "PATH=/example.bin:${PATH}"
* Free more members from the delivery contextJoseph Hunkeler2024-03-221-0/+4
| | | | | | | * Delivery.storage.output_dir * Delivery.storage.build_docker_dir * Delivery.deploy.jfrog[n].repo * Delivery.deploy.jfrog[n].dest
* Dynamically allocate Delivery.system.platform array.Joseph Hunkeler2024-03-221-0/+5
| | | | * This avoids compiler warnings about passing the address to a stack-allocated chunk of member in tpl_register.
* Use GENERIC_ARRAY_FREE instead of split_free()Joseph Hunkeler2024-03-221-1/+2
|
* Free more dangling resourcesJoseph Hunkeler2024-03-221-0/+1
| | | | | * Delivery.meta.based_on * Delivery.storage.results_dir
* Free more dangling resourcesJoseph Hunkeler2024-03-221-0/+1
| | | | | * Delivery.meta.based_on * Delivery.storage.results_dir
* Add missing cleanupJoseph Hunkeler2024-03-181-1/+4
| | | | | * Closes dangling file streams scattered throughout * Frees pointers related to Delivery.docker missed during implementation
* Add fix_tox_conf functionJoseph Hunkeler2024-03-141-0/+19
| | | | * If the user calls tox in a test script like so: tox {{ workaround.tox_posargs }}, then a temporary tox configuration will be generated and the appropriate arguments to use it will be injected into tox's command line arguments
* We're executing the test, so tell the userJoseph Hunkeler2024-03-141-1/+2
|
* Fix bug that prevented package deferrals from proceeding when package names ↵Joseph Hunkeler2024-03-141-2/+2
| | | | contained URLs or version specs
* Splits OMC directory creation into two stagesJoseph Hunkeler2024-03-141-7/+15
| | | | | | * Stage 1: Initialize base directories (omc/root, omc/build, etc) * Stage 2: Initialize output directories (omc/output, etc) * Output directory now provides a unique parent directory name to avoid clobbering previously delivered data
* Pretty-print pytest xml results (if xmllint is present)Joseph Hunkeler2024-03-141-0/+31
| | | | | | | * Adds Delivery.storage.results_dir member * Exposes storage.results_dir to templates * This is to make the test results human-readable * xmllint is optional. If it isn't installed it isn't a big deal.
* Only set continue_on_error and always_update_base if not already set by CLI ↵Joseph Hunkeler2024-03-121-4/+9
| | | | | | argument * Those bare variables were useful after all
* Use do/while in guard_* macros to make them behave more like functionsJoseph Hunkeler2024-03-101-74/+74
|
* Replace getter_* and conv_* macros with static functions.Joseph Hunkeler2024-03-101-186/+160
|
* Fix python_compact not getting updated when target python version changedJoseph Hunkeler2024-03-081-3/+6
|
* Makes docker builds, artifactory uploads, and testing optional via CLI ↵Joseph Hunkeler2024-03-081-2/+5
| | | | | | | arguments. * Remove [DEBUG] from debug summary * Add enable_* states to debug summary
* Zero argument bufferJoseph Hunkeler2024-03-071-0/+2
|
* Add OMC_ROOT environment to control where OMC writes its files toJoseph Hunkeler2024-03-071-1/+11
|
* Set global.jfrog.repo through config, or environment variableJoseph Hunkeler2024-03-061-0/+9
| | | | * This used to be the case but the code was removed at some point; most likely by accident.