| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
* Was supposed to be pandoc_versioned_args
|
|
|
| |
* Change python_compat to python_compact
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Tweak pandoc command and add a style sheet
* Only search for platform sub-string when valid
* Add get_pandoc_version
* Add version checking and set options accordingly
* Add support for globals.sysconfdir
* Add missing brace
* Remove options that are created dynamically
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix up shell() behavior
* Removes dead code after execl()
* Return the return value of execl() immediately
* Output redirection fix: if f_stderr and redirect_stderr were both set, stderr was not redirected
* Move the file handles into the child process
* Bash now executes with --norc to avoid clobbering environment variables. This mimics /bin/sh behavior.
* Fix test script environment
* shell() already provides a temporary script. Not jumping into another sub-shell should preserve help preserve the top-level environment.
* Try a different approach using declare -f
* Revert "Try a different approach using declare -f"
This reverts commit ea8ec855c3c6870d29c55afe3787afb2c05026a1.
* Revert "Fix test script environment"
This reverts commit 0a4efe972a78378eba5c5fbc6819c39b3cc6c9cb.
* Change script permissions: 0700
* Force conda reactivation in test script
* Switch to the usual environment reactivation method
|
|
|
|
|
| |
* Add test_copy.c
* Add test_wheel.c
|
|
|
|
|
|
|
|
|
| |
* Fix pandoc command regression
* Add space between destination and input
* Add pandoc dependency
* Dump output of indexed files
|
|
|
|
|
|
|
|
|
|
|
| |
* Clean package caches (saves about 1GB of layer-space)
* Update installation instructions
* Update layout
* Use template variables where appropriate
* Instructions now provide release notes in one place
* Pandoc now uses --standalone
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add python_package_exists() function
* Poll pypi.org or compatible index to see if a package exists
* Returns non-zero on success
* Implements python_package_exists() in delivery_defer_packages()
* Implements python_package_exists() in delivery_defer_packages()
* Bugfix: Avoid incorrect package selection
* With large package lists that contain multiple packages starting with the same strstr() would pick the first match
* This adds a temporary name variable that strcmp() can check against.
* Message correction:
* Change "release" to "testing" in testing environment failure message
* Amend message to fit the flow of the output
* Disable outdated conda notifications
* The latest version isn't always the greatest. Don't give the end-user any ideas. Just use whatever the installer provides... quietly
* Rename python_package_exists to pip_index_provides
* Document the function prototype
* Add missing comments in micromamba structure
* Ensure the temporary output file does not linger
|
|
|
|
|
| |
* Add enable_artifactory_build_info to globals structure
* Add --no-artifactory-build-info command line argument to status main()
* Useful for diag/test runs when a fully traceable delivery isn't desired
|
|
|
|
| |
* The array of packages now used to check the runtime environment instead of two separate scanning methods
* Renamed tools array to: conda_minimum_viable_tools
|
|
|
|
| |
* The packages directory is copied to the build/docker directory.
* There is no need to separate these ADD calls.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Die when render variable is NULL
* This was caught when a call to {{ func:xyz() }} lacked opening/closing parenthesis
* Scripts in tests should only render template strings right before execution
* Remove conda version pin
* This avoids updating conda in the base environment
* This also avoids pitfalls associated with newly released (always broken) versions of conda
* Add two template convenience functions
* get_junitxml_result_auto()
* get_basetemp_result_auto()
* Handle rendering error for test script
* Rename functions
* get_junitxml_result_auto -> junitxml_file
* get_basetemp_result_auto -> basetemp_dir
* Thank you, @zacharyburnett
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Handle destination directories more gracefully
* The storage.output_dir is now the storage.root to avoid generating a sub-directory beneath the temporary working directory
* The destination directory is created, then resolved by realpath to avoid generating the destination directory within the temporary working directory when a relative path is used as input
* Replace the original file instead of using rename()
* rename() cannot operate across file system boundaries
* Dynamically allocate rootdirs array
* Use realpath on positional arguments
* Convert all markdown files to HTML
* README.html files are considered entry points and are linked as index.html
* Assign retcode after indexing
|
|
|
| |
* Functionality was replaced by rsync long ago
|
| |
|
|
|
|
|
|
|
|
|
| |
* Add test_recipe.c
* Unit test for recipe functions
* Add error cases
* Add missing explicit members in testcase array definition
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add test_artifactory.c to suite
* Add test_ini_getval_wrapper to ini.c
* basic ini_getval_TYPE() conversion checks
* bugfix: use strtof in INIVAL_TYPE_FLOAT case
* Include stdio.h to pull in FILE structure
* bugfix: free data at index during strlist_set operation
* Previous behavior of setting the pointer to NULL introduced a subtle memory leak
* Set strlist error when index it out of range
* Import private delivery functions required for mock context creation
* Remove static declaration
* populate_delivery_cfg()
* Add test_junitxml.c
* Fix duplicate define value for JUNIT_RESULT_STATE_ERROR
* Add static junit test data
* Copy test data to current test directory
|
|
|
|
| |
* Destination directories were not created properly
* This ensures $HOME/packages/{conda,wheels} are created in the docker developer home directory
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Continuation of #19
* Fixes always_update_base_environment override bug added by PR #19
* Finish type hinting implementation
* ini_getval_* functions now able to affect rendering mode using INI_READ_RAW and INI_READ_RENDER
* Created pointers to deeply nested structures to increase readability
* Output from ini_write() is more consistent, with fewer errant spaces and line feeds
* Fixes accidental regression in #19. INIVAL_TYPE_STR_ARRAY never produced an array of pointers to char. This needs to be corrected in the future. i.e. It has always generated a new-line delimited string, not a StrList, or array.
* Fix strlist_append_tokenize
* original pointer is no longer modified
* token strings are stripped of leading space before appending to the list
* Use defines instead of magic numbers
* delivery_init: add render_mode argument
* test_conda: Add render mode
* test_ini: Add render mode
* Only add conda packages and wheels to the image
* docker images are saved to the packages directory and will be consumed by the image if present.
* Render template variables after bootstrapping the delivery
|
|
|
|
|
|
|
|
| |
* Free the function key string in tplfunc_frame during tpl_free()
* Fix leaks in get_github_release_notes_auto_tplfunc_entrypoint():
* Free repository name
* Free list of release notes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add handler for space-delimited lists
* This needs attention, however. The INI writer has no way to know a list with spaces is a list; this happens in the value conversion functions.
* Add type_hint member to INIData structure. At some point support with be added for all INIVAL_TYPE_* defines. Right now it's only used with arrays.
* Zero out line buffer in ini_open after each iteration
* Do not strip raw INI data. Let the conversion functions handle it
* Add spaces to key value pairs in rendered INI output.
* Add ini_getvar_TYPE() functions
* These replace the functionality of static conv_TYPE() functions in delivery.c
* Add support for missing types: U/CHAR, U/SHORT, STRLIST
* ini_getval: expand template variables immediately before processing the output
* Strip leading space to avoid issues with string comparisons against the result
* ini_getval: Return copies, not the original.
* This forces one to use ini_setval to replace/append values to the data array(s). It's safer this way.
* fix_tox_conf(): Use ini_getval and ini_setval instead of modifying the original pointers directly
* Tests: Free resources
* Replace ini_getval(), ini_getval_required() and conv_*() usage
* Now using ini_getval_TYPE() functions and ini_setval()
* Remove unused helper functions and variables
* download() returns long, not int
* actions: update apt cache
|
|
|
| |
* LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line XY)
|
|
|
|
|
|
|
|
|
|
| |
* Fixes readout of packages in delivery
* Now that the overview is displayed after deferred packages are filtered out of the main list, filtered packages were no longer displayed
* This combines the main list and deferred list for both conda, and pip packages.
* Read the main and deferred lists no matter what
* Use new style package definition in test config
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Compile test installation with debug symbols enabled
* Fix typo in environment variable name
* STASIS_GITHUB_TOKEN is supposed to be STASIS_GH_TOKEN
* Add pattern matching mode selector to get_wheel_file()
* Adds modes WHEEL_MATCH_EXACT and WHEEL_MATCH_ANY
* test block version key is now optional
* Now that *_packages lists define the package version through detection, because the end-result version cannot be guaranteed to be identical to the tag.
* Find the just-compiled package matching the name and version in the package list.
* If compiling master/main this can also match against post-commits (x.y.z.devN+hash)
* Versions are extracted from the package name in the list, only if a matching test block exists. Otherwise the string is passed through to pip directly.
* Changes indentation level of output
* Do not replace @PIP_ARGUMENTS@ with an artifactory URL unless artifactory is enabled
* Sequence change
* Build requested packages before executing tests. A necessary evil if test blocks are no longer responsible for setting the version data
* Show the delivery summary just before test execution, instead of at the start of the program
* Terminate package name at version operator when a package is filtered for testing
|
|
|
|
|
|
|
|
|
| |
* Add jfrog_cli_rt_search() and JFRT_Search structure
* Ensure authentication arguments are written before a subsystem task's arguments
* When artifactory is enabled check if the release is already present.
* When artifactory is disabled the check will be made against the local filesystem.
|
|
|
|
|
|
|
|
|
|
|
| |
* Found too many bugs
* Implements a regression test
* Moves and completely refactors the envctl code
* Allows the user to keep @STR@ values in output files (if you want full control over where external packages comes from post-build)
* Fixes wording in a few places
* envctl redaction is not implemented yet. The original redaction code hasn't been modified.
* Use generic.ini instead of bare_minimum.ini
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Change return value of conda_setup_headless() from void to int
* Replace exit() with return;
* Return early if unpacking the micromamba binary fails
* Exit program when pointer to INIFILE is NULL.
* Validation function cannot otherwise proceed
* The way the logic is set up I've decided to duplicate the installation code for now until I find time to revise it
* The only meaningful difference between a "fresh start" and reusing the conda installation is a rmtree().
* Exposes STASIS_DOWNLOAD_TIMEOUT environment variable
* Sets the connection timeout for libcurl to 30, instead of 300.
* Export ini_section_create() function
* Add download() tests
* Add conda_*() tests
* Add boilerplate source file for test framework
* Fixes segfault reported by @GeorgeJCleary (#10)
* The key is now an array index. When key is -1, the env variable is not defined.
* Free resources only when continue on error is disabled (#11)
* Fix segfault due to premature shutdown/cleanup
* If conda_setup_headless cannot succeed, die
* Set STASIS_SYSCONFDIR for tests
|
|
|
| |
* Fix segfault due to premature shutdown/cleanup
|
|
|
| |
* The key is now an array index. When key is -1, the env variable is not defined.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Add github.c and github.h
* Implements get_github_release_notes()
* Remove unused variables
* Fix circular dependency on tplfunc_frame
* Remove predeclaration of tplfunc_frame
* tpl_register_func accepts pointer to void instead
* tpl_register_func sets maximum number of arguments
* Frame is generated within tpl_register_func
* Improve template function error handling and return/output management
* Remove redundant extern statement
* Include github.h and template_func_proto.h in core.h
* Expose get_github_release_notes_tplfunc_entrypoint function to template engine
* Add template_func_proto.c and template_func_proto.h
* Replace free() with guard variant
* Fix test_template::test_tpl_register_func
* Fix tests
* Fix tests
* cmd should be at least PATH_MAX in size.
* Magic number caused failure to install conda with a long installation path
* Implement get_github_release_notes_auto function that bases release note data off test contexts
* Disable overwriting releases by default
* Add automatic release note generation function call to release_notes.md.in
* Fix test_tpl_register_func()
* Add enough space for tar command plus a path
* Fix circular include
* Github functions do not require access to core.h anyway
* Add comments to union
* Update README to mention template function availability
* Add EnvCtl structure
* Add runtime checks to avoid running all the way to the end only to be met with a configuration error.
* Rename GITHUB to GH
* Development docs pre-rough-draft
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Pass .ci_support/plat_arch_.yaml to conda-build
* Fixes a few outstanding leaks in delivery context
* Move micromamba function out of stasis_indexer.c
* Adjust code in the indexer to accommodate the move. The function now expects a MicromambaInfo structure as its first argument.
* Add missing warning message
* User is informed when pandoc is not available for HTML page generation
* Initialize workdir_template string to zero
* Add micromamba program to runtime PATH
* Expose storage.tools_dir to template engine
* Remove dead code
* Fix wording in comment
* Fix conda-forge builds
* Pass their .ci_support configurations to conda-build in order to fully set up their build runtime environment
* Add get_cpu_count()
* Exposes STASIS_CPU_COUNT and CPU_COUNT to the runtime environment
* Implements conda reactivation template string
* {{ workaround.conda_reactivate }}
* This is useful to call after installing any conda packages within a test.script
* Fix conda runtime inside of test.script
* This ensures conda and mamba are fully initialized.
* Previous behavior only placed the commands on the PATH but didn't provide any shell macros (i.e. undefined behavior)
* Document CPU_COUNT and workaround.conda_reactivate
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Initial commit of unit tests [WIP]
* Address shortcomings and bugs flushed out by unit tests
* Enable unit testing in CI workflow
* Enable verbose ctests
* Handle lack of __FILE_NAME__ define
* Only podman support `run --arch` argument
* Skip docker build testing if CI system cannot pull an image
* Remove errant call to puts()
* Identify local repo user
* Fix missing xmllint
* NULL terminate arrays
* Fix filename assignment in is_url mode
* Break loop when expected lines are exhausted
* strcmp_array expects NULL terminated array. Iterating by size in this case passes NULL to strcmp leading to an invalid read
* Remove debug printf statements
* Disable a few warnings for tests
* Workaround for ctest junit xml truncation
* Update checkout@v4
* Prevent false-positive result
* Return zero on error
* Fix strlist_remove function
* Value argument can be constant
* Fix test to match changes to startswith and endswith
* Add test_ini.c
* Fix redaction code to accept NULL pointers in array
* And let the caller specify the length of the array of strings to redact.
* Redactions now occur directly on authentication strings rather than their command line arguments
* Fix BUILD_TESTING_DEBUG
* Adds missing -D argument
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
* Brilliant.
|