composed-ci takes the LabVIEW-specific configuration complexities out of your continuous integration.
This package exists because of the following premises:
- A LabVIEW project should know how to test and build itself.
- Configuration and testing of the LabVIEW-specific test and build steps should be able to be performed in the LabVIEW IDE with an equivalent command line API available for the CI server.
By managing LabVIEW's test-and-build configuration in the project, the API and number of parameters the CI server needs to manage are minimized, which decouples projects from the CI server. This assists with configuring the CI server by removing responsibilities, and minimizes the amount of information that the CI server has to know about your project.
Test-and-build parameters are stored in a configuration file that lives next to your source code.
Includes a user interface to select which build specifications and tests to run.
This project uses VI Analyzer and JKI VI Tester.
This package depends on the following VI Packages (all available on VIPM):
LabVIEW CLI by Wiresmith Technology
JKI_labs_tool_vi_tester by JKI
VI Tester JUnit XML Test Results by JKI
VI Analyzer Results to Checkstyle XML Format by National Instruments
This package depends on the following NI Products:
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
[1.1.0] - 2019-04-25
- Added a new method called "Recompile Project" that will force a bottom-up recompile on all VIs in a project, including GPM dependencies. This will fix any conflicts that may otherwise occur when opening the project and appear in the dependencies section.
[1.0.1] - 2019-04-17
- fixed an issue where dependency order sorting in the relink step did not work for some packages
[1.0.0] - 2019-04-15
- removed a breakpoint from manual build step that prevented builds from working
- updated default value of build target to be 'my computer'
- build step now creates zip files of build output
- build output is left in place, in case it is needed by subsequent build specs
- 'build specification names' no longer builds all if left blank. Builds must be selected using the 'select build specs' button on the configure build UI
[0.9.17] - 2019-02-28
- manual API methods now generate usefult errors if input paramaters are bad
- improved test coverage for bad of missing configuration files
- improved test coverage for bad or missing working directory
- improved test coverage for VI tester steps, which must be run manually
[0.9.16] - 2019-02-28
- renamed composed-ci.ini to composed-ci.cfg
- added 'select build spec' button to UI
- added 'select tests' button to UI and reworked the VI tester operation to use a folder and whitelist/blacklist
- removed pipeline build step
[0.9.14] - 2019-02-26
- removed dependency on ci-common-steps
- updated documentation and icon/avatar
- Open Project from CLI will return an error if <1 good VIs found or >0 bad VIs
[0.9.12] - 2019-02-25
- small refactor from VIA feedback
- added mass compile and relink steps to the CLI API
significant rework of the sweet user interface, including new buttons for mass compile and relinking
[0.9.11] - 2019-02-19
- updated composed-ci.ini
- removed configuration.lvlib
- removed dependency on @cs/configuration
- added open project step
- refactor due to new VIA configuration
[0.1.0] - 2019-02-7
Copyright (c) 2019 Composed Systems, LLC
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.