Age | Commit message (Collapse) | Author |
|
* Migrate Tests from Travis CI to Github Workflows
* Use GHA path filters
* Make a unit test fail
* Run new cmocka based unit tests
* Revert "Make a unit test fail"
This reverts commit 15500c59e4d49cb478ef27289de0366a543815c5.
* Make a cmocka unit test fail
* Work around a bug in libbson-1.0 on Ubuntu 18.04
* Add DCMAKE_BUILD_TYPE=Debug to make dbengine tests pass
* Upload LastTest.log to GHA Artifact storage
* Revert "Make a cmocka unit test fail"
This reverts commit 920f56a03d0479bec1a67dc8c242df189f702177.
* Remove Artifacts Validation stage
|
|
* Migrate make dist validation to GHA Workflows
* Refactor run_install_with_dist_file.sh
|
|
|
|
default to magical behaviour (#8355)
|
|
* Migrate coverity-scan to Github Actions
* Move to job conditional and use local install-required-pacakges.sh
* Add COVERITY_* secrets and add them to the Github secrets store with values from Travis copied over
|
|
* Consolidate and clean up artifact validation.
This consolidates the two separate 'Artifacts Validation' stages we have
in Travis into a single stage,a s well as fixing an error in the
handling of the lifecycle checks.
Overall, this should improve build times for Travis CI checks due to a
deduplication of certain lifecycle checks and an overall increase in the
parallelizability of the jobs within the stage.
* Fix lifecycle check retry logic.
|
|
* Migrate Travis based checks to Github Actions
* Remove Gitlab CI config
* Remove ./build/build.sh and use simple shell to do consistency checks on Dashbaord JS
* Install prereq deps
* Rename job
* Fix brain fart momemt
* Split Dashboard checks into a separate job
|
|
|
|
anything to developers #8188 (#8196)
* Remvoed the use of clang-format that does not actually block PRs or surface anything to developers
* Reopen PR
|
|
|
|
* Fixed Travis CI build handling.
We need to properly quote YAML metacharacters.
* Update pre-generated dashboard.js.
|
|
|
|
|
|
It went EOL upstream on 2019-11-26.
|
|
It went EOL with no continuing upstream support on 2020-01-23.
|
|
Official upstream support for 15.0 ended on 2019-12-03, more than 3
months ago.
|
|
* Add release channel customization to docker build
* Add release channel to travis config
* Build releases with stable channel
* Update packaging/docker/build.sh
Co-Authored-By: Konstantinos Natsakis <5933427+knatsakis@users.noreply.github.com>
* Update packaging/docker/build.sh
Co-Authored-By: Konstantinos Natsakis <5933427+knatsakis@users.noreply.github.com>
Co-authored-by: Mansour Behabadi <mansour@oxplot.com>
Co-authored-by: Konstantinos Natsakis <5933427+knatsakis@users.noreply.github.com>
|
|
-fno-common will be set by default in GCC 10, see https://gcc.gnu.org/PR85678
Therefore, netdata should test with that configuration to be ready for this change.
See https://github.com/netdata/netdata/issues/7869
|
|
This adds a check to the nightly build stages to allow skipping them if
a specific environment variable is not set by Travis.
This allows us to disable nightlies by removing the environment variable
instead of needing to remove the cron job itself, thus ensuring that
nightlies keep happening at the same time each day regardless.
The specific variable is named `RUN_NIGHTLY`, and must be set to 'yes'
to enable nightly builds.
|
|
* Move the script for installing required packages into the main repo.
Based on discussion with Costa.
Most of what this script is actually used for directly is in the main
repo anyway, so it makes more sense to have it there so that any changes
get reviewed properly.
* Fix typo in RPM package build setup.
|
|
|
|
This decouples the PR labeling process from the main CI process, allowing
them to run completely independenly of each other.
The new labeling configuration is based on copying, extending, and
correcting the existing labeling rules in the `labeler.sh` script which
the commit is removing.
Labeling is configured through `.github/labeler.yml` file. Check there
for info on the exact format.
The exact configuration being used will update labels on PR's whenever
one is opened, updated, reopened, or marked ready for review. It will
not remove existing labels from the PR, only add new ones.
|
|
* Remove Fedora 28 from the lifecycle checks.
It's been EOL since 2019-05-28, and anybody continuing to use it is
recieving no support from upstream _or_ the Fedora community.
* Remove Ubuntu 18.10 from package builds.
It's been EOL since 2019-07-18, and anybody continuing to use it is
recieving no support from upstream or the Ubuntu community.
* Update docs.
|
|
* Add Ubuntu 19.10 to packaging and lifecycle checks.
It's been out since 2019-10-07.
* Update docs.
|
|
This adds a check to prevent the 'Support activities on main branch'
stage from running on forked repos. In such repos, it will automatically
fail without special effort from the user, requiring them to carry local
patches on their master branch.
Without this, CI builds of the 'master' branch will fail for users who
do not go through the effort of setting up the custom patches to disable
this stage in their repo.
|
|
* packaging: Set default release channel to stable for gh releases
* Leave kickstart files alone
* Update .travis/create_artifacts.sh
Co-Authored-By: Konstantinos Natsakis <5933427+knatsakis@users.noreply.github.com>
Co-authored-by: Mansour Behabadi <mansour@oxplot.com>
Co-authored-by: Konstantinos Natsakis <5933427+knatsakis@users.noreply.github.com>
|
|
* Skip unit testing during CI when it's not needed.
Our current unit testing takes almost 20 minutes on average during the
CI process, which is almost twice as long as any other step, and it's
only going to get longer as we get better test coverage.
This commit slightly alters how we handle unit testing during CI so that
only those unit tests which are actually needed get run.
This is achieved by using the `$TRAVIS_COMMIT_RANGE` environment
variable provided by Travis to determine which commits we're actually
testing, and then using that information to query Git for what files
actually changed.
As of right now, the only unit testing we're doing is in the dbengine
code, so we check to see if any of those files or the C unit testing
files are modified by the PR and only runs the unit tests for those if
they were modified. The checks are a bit more wide-ranging than they
probably need to be so that we make sure to avoid any false negatives.
This should speed up CI checks for PR's (as well as not monopolizing the
master branch after every PR that gets merged).
* Restructure to better handle PR's.
The previous code did not work correctly with PR's because it ignored
the fact that Travis does not appear to report the full list of commits
for a PR in `TRAVIS_COMMIT_RANGE`, instead only reporting the most
recent set of commits that were pushed.
* Add listing of commits being checked.
This will allow for verification of what is being tested, making it
easier to spot issues with the detection logic.
* Don't assume PR's are targeting the master branch.
|
|
The `matrix` key is officially deprecated and gets auto-merged with the
`jobs` key during config parsing.
If this auto-merging occurs, then the config will fail config
validation, which will in turn cause odd failues during the build
because of how Travis handles config validation (namely, it falls back
to a default config for the detected language).
This change allows us to enable the Config Validation feature in Travis,
which will in turn cause the build to fail very quickly if the
configuration is invalid in some way.
|
|
* Add a job to build and publish Fedora 31 RPMs
Fedora 31 was released on 2019-10-29.
* Also enable Fedora 31 lifecycle checks.
Previously disabled because Fedora 31 was not yet released at the time.
|
|
* .travis.yml: Do not define docker service
It is already there for the bionic image
* .travis.yml: Do not attempt to upgrade docker-ce package
It is already in the latest version for bionic image
* .travis.yml: Do not run docker info
Travis runs docker version by default
|
|
* .travis.yml: Add timestamps to output
* .travis.yml: Use '%H:%M:%.S' intead of '%.T'
Because %.T is not availabe in moreutils 0.60-1
* .travis.yml: Add timestamps to stderr as well
* .travis.yml: Add extra space to timestamp format for better readability
|
|
* ci: remove ubuntu trusty 14.04 from build
* Update packaging matrix with ubuntu 14.04 changes
|
|
|
|
Added a linting pass. This is non-blocking but will output a measure of how much each .c and .h file deviates from our current .clang format. Changed the standard build to include all of the warning that we are using in dev. Added the dependencies for dbengine and confirmed that the standard build enables dbengine. Fixed the original warnings.
|
|
* .travis.yml: Add tick() and retry() functions
* .travis.yml: Remove superfluous 'docker info' commands
The docker info command is ran during the install phase. There is no
need to run it again
* .travis.yml: Use the tick() function instead of travis_wait()
|
|
|
|
|
|
Build was failing, because where the function is called, we have only cloned the last 50 commits.
|
|
* netdata/packaging: bring el/6 first, because this appears on all cases. Otherwise travis craps out the steps
* netdata/ci: Attempt to sanitise workflow for master branch commits
1) Rename Packaging for release, now named: Support activities on main branch
2) Adjust instruction messages to reflect more realistically the activities
3) Put labeler first on the stage, since this will always run
4) Make changelog and tag for release conditionally run, so that it does not confuse people
* netdata/ci: Sanitise workflow for release more (explained below)
We need to clean up tagging logic more and in order to do this we need to bring tagger logic to travis.yml
Then we have the complete control of tagging and triggering for changelog generation in travis.
To mitigate this, we need to:
1) make tagger script a lirbary. Keep the tagging logic in a method and remove the things needed when it was an executable (checks, executions etc)
2) make travis handle GIT_TAG checking and setting at the beginning. We need this outside of any conditionals so that we have GIT_TAG result available inside the steps
3) COMMIT_TAG_POINTS_AT can now become GIT_TAG, since this is what we actually wanted. We just named differently before to avoid any weird conflicts
4) make changelog generation for release to NOT source tagger any more. Also make it fail in case GIT_TAG is not there, we wont run the script if git tag not in place so that should be error if it happens
5) Rename .travis/generate_changelog_for_release.sh -> .travis/create_changelog_for_release.sh
6) Rename .travis/generate_changelog_and_tag_release.sh -> .travis/generate_changelog_for_release.sh
* netdata/ci: reinstate filename here. we basically do the git tag operation here still
* netdata/ci: simplify more the changelog generation process
1) Rename create_changelog_for_release.sh -> create_changelog.sh
2) Add comments and the standard path checks in create_changelog.sh
3) Do some minor changes to help diff with nightlies changelog (no functional change though, primarily messages and move flags lower)
4) Inside generate_changelog_for_nightlies.sh, use create_changelog.sh and remove code related to create changelog process
5) in nightlies.sh, use standard shebang adn fix some messages
Note: might follow up with more changes, this is just a first batch
* netdata/packaging: reinstate accidentally removed OPTS from other iterationns (different engineer)
|
|
|
|
|
|
(#6724)
* netdata/packaging: baby steps, create the new package and introduce the install file
* netdata/packaging: [ci skip] change branch to be able to test
* netdata/packaging: we do define usrlib path to be /usr/lib
* netdata/packaging: silence sign errors for now
* netdata/packaging: Add rules for plugin-cups sub package
* netdata/packaging: [ci skip] That is libexec, not lib, duh
* netdata/packaging: [ci skip] explicitly arrange the other plugins also
* netdata/packaging: [ci skip] fix bug
* netdata/packaging: copy, dont move
* netdata/packaging: move all plugins around, also remove a slash
* netdata/packaging: [ci skip] align travis.yml changes with the ones we used on rpm cups pkg split
* netdata/packaging:[ci skip] add netdata dependency
* netdata/packaging:[ci skip] Update control files
* netdata/packaging: Add separate control file for buster, dependencies deviate (libprotoc17 instead of libprotoc10....)
* netdata/packaging: [ci skip] whoops
* netdata/packaging: [ci skip] Copy over files from temp dir, if destination non existent
* netdata/packaging:[ci skip] -d, not -f
* netdata/packaging: [ci skip] long shot
* netdata/packaging: [ci skip] revert this - need to retest
* netdata/packaging: [ci skip] remove the .install, as per an article input (https://askubuntu.com/questions/660373/dh-install-fails-with-missing-files) these files are for handling items not managed by the upstream build system, so bye bye
* netdata/packaging: Ok, lets ditch dh_auto_configure
* Revert "netdata/packaging: Ok, lets ditch dh_auto_configure"
This reverts commit 3b497cf5f6e157ce5429ffce38452515670a934a.
Well, that didn't affect anything
* netdata/packaging: [ci skip] here's a crazy thought
Okay, assuming that packager decided to use debian/tmp because we introduced multiple packages.
If that is the case, then move the custom stuff out first and then just move all debian/tmp to debian/netdata.
In theory, that should get me back on track for the rest of the package processing.
Lets see if i was right
* netdata/packaging: [ci skip] mv complains, forgot about that, fix
forgot about that, just copy for now to verify the use case and we will consider rsync approach for faster processing afterwards
* netdata/packaging: nope, that didn't work. rollback and remove also a suspicious backslash
* netdata/packaging: ok, trying this
* netdata/packaging: really?
* netdata/packaging: [ci skip] reinstate original setup, the bug probably was too obvious to spot
* netdata/packaging:[ci skip] now that you finally noted the www bug, try to copy over the rest of the stuff in
* netdata/packaging: [ci skip] long shot, etc is not properly created, lets see if it was already there and we messed it up
* netdata/packaging: [ci skip] fix perms, add placeholder folders in etc
* netdata/packaging: [ci skip] preserve ownership details when copying over
* netdata/packaging:[ci skip] reinstate branch condition
* netdata/packaging: redudant
* netdata/packaging: xenial - add cups subpackage
* netdata/packaging: remove cups dependency from those distros, missed to update the control file
* netdata/packaging: dont use personal account info
|
|
triggered only on specific keyword, that should be enough (#6834)
|
|
* netdata/ci: fine grain coverity scan toolkit
1) Deprecate coverity-install.sh
2) add set -e to raise errors more aggressively when something is wrong
3) refactor some variable definitions for temp and install paths, use mktemp and clean up temp dir when all ok
* netdata/ci: reduce the scope
* netdata/ci: require curl
* netdata/ci: go soft on functions loading
* netdata/ci: allow override of build version without touching the script
* netdata/ci: handle shellcheck errors, some were silenced because we dont handle them
* netdata/ci: coverity scan, parse any extra options other than --with-install and pass them to configure
1) add default configure arguments if no extras are given
2) parse all possible arguments individually, handle --with-install and pass the rest to scanit
* netdata/ci: focus, argument parsing in one place a bit more consistently
* netdata/ci: prepare for using
* netdata/ci: coverity - add more flags, adjust deps list
1) Add with math and with zlib flags on the script
2) add xenstat dependencies
3) run in coverity with custom flags, so that we add xenstat (no need to be by default for the users of the script)
* netdata/packaging: add xen-utils also
* test the flow
* netdata/ci: dont forget to go back to the original directory
* netdata/ci: please, travis, stop it
* netdata/ci: how about this then
* netdata/ci: silence that, we cant call it otherwise
* netdata/packaging: update documentation around xenstat on centos
* netdata/packaging: dont enable xenstat at this stage
* netdata/ci: add += instead of variable reusage
|
|
|
|
(#6808)
|
|
(#6766)
enable auto-generation of packages for RPM and DEB, during stable release
|
|
different version (#6753)
|
|
|
|
|