Commit Graph

518 Commits (table-index-cache_oss-port)

Author SHA1 Message Date
Charles Thomas e093440d88
ci: fix `fetch-python` (#26613)
download python tarball outside of the circle working dir, and set its
ownership to prevent the tarball from changing while it's being archived

cache `python-artifacts` in a path that doesn't change between pipeline
runs
2025-07-16 16:14:33 -04:00
Charles Thomas 8a29f0250a
ci: use self-hosted circle runners, with workspace isolation (#26560)
also changes `PBS_DATE` & `PBS_VERSION` caching to use
`<< pipeline.parameters >>` instead of `<< checksum >>` of a file, so
that `/tmp/pbs_version` can't change if two different jobs run on the
same runner at the same time

additionally, remove as many `*` as possible in the `deb` & `rpm`
validation, because it appears it's getting interpretted in different
places between the amd & arm runners and containers
2025-07-07 14:27:56 -04:00
Trevor Hilton 5daca6eb7b
chore: remove README from packaged files in build (#26587) 2025-07-03 10:01:01 -07:00
wayne c205fefa17
fix: revert self-hosted runner for now (#26555)
* Revert "ci: add `sync`s for `fetch-python` (#26526)"

This reverts commit 048885e3d8.

* Revert "ci: move some circleci tasks to self-hosted runners (#26514)"

This reverts commit 2143e49ae0.
2025-06-23 16:54:48 -06:00
Charles Thomas 048885e3d8
ci: add `sync`s for `fetch-python` (#26526)
after moving to the self-hosted runners we've seen issues before and
after creating `all.tar.gz`. add `sync` before & after creating it to
make sure the files don't change during the relevant operations
2025-06-16 16:29:07 -05:00
Charles Thomas 2143e49ae0
ci: move some circleci tasks to self-hosted runners (#26514)
* ci: move some circleci tasks to self-hosted runners

we have self-hosted circleci runners. migrating to them will reduce the
cost dramatically. this only moves `machine:` jobs. work needs to be
done on the hosts before migrating the `docker:` jobs

* test(ci): change some filters to run jobs that otherwise wouldn't run

in order to test them on the self-hosted runners

if / when they pass, this commit needs to be dropped before merging

* ci: cleanup package-validation, run verification in containers

run the package validation scripts in containers on the self-hosted
runners. this has the benefit of not needing terraform, and also
prevents issues cleaning up the install on the long-lived runners by
using an ephemeral container for the installation

* ci: reset filters

several filters were changed for testing. this puts them back to their
original values
2025-06-16 11:16:52 -04:00
Jamie Strandboge 4cdf57d6dc
fix(py): update to python 3.13.5-20250612 for security fixes (#26518)
* fix(py): update to python 3.13.5-20250612 for security fixes

3.13.4 fixed various CVEs. Upgrade to 3.13.5 per upstream expedited
release to fix problems with 3.13.4.

* https://www.python.org/downloads/release/python-3133/
* https://www.python.org/downloads/release/python-3134/
* https://www.python.org/downloads/release/python-3135/

* fix(py): use equivalent x86_64-pc-windows-msvc instead of -shared variant

Per https://github.com/astral-sh/python-build-standalone/releases/tag/20250311,
"Windows artifacts with the -shared suffix will no longer be published:
this variant became the default in 20240415 and duplicate archives have
been published under the -shared suffix for backwards compatibility. Use
the equivalent archives without the suffix.

* chore: update README_processing_engine.md for latest versions
2025-06-13 14:01:30 -05:00
Jamie Strandboge bc41c04656
chore: cache python-build-standalone in CircleCI (#26513)
Closes #26013
2025-06-12 21:11:12 -05:00
Jamie Strandboge d8ce7f93dc
fix: rename influxdb3 to influxdb3-core when building packages (#26220) 2025-04-03 11:50:46 -05:00
Jamie Strandboge 6a947bfc35
fix(ci): update ci-support to add _<arch> to zip filename (#26212) 2025-04-02 14:47:39 -05:00
praveen-influx 823e792c67
chore: check if build is dirty and fail (#26172) 2025-03-20 20:05:32 +00:00
Jamie Strandboge 8bb09e4b82
chore(ci): update to handle release tags (#26166)
* chore(ci): use most recent ci-support images

* fix: update release_filter (thanks Praveen) and pkg version for release
2025-03-19 10:46:44 -05:00
Jamie Strandboge 51123f2da0
fix: don't use modified .cargo/config.toml (#26148)
We need to both add and remove keys from rustflags, but modifying
.cargo/config.toml in place causes the version string to have -dirty
appended to it. Use ci-support that instead creates ./.cargo/config (a
historic filename that is preferred over ./.cargo/config.toml if it
exists) and then git ignore ./.cargo/config.

References:
- https://github.com/influxdata/influxdb/issues/26147
- https://doc.rust-lang.org/cargo/reference/config.html?highlight=rustflags#hierarchical-structure
2025-03-16 14:19:59 -05:00
Trevor Hilton f94c21025d
chore: re-enable release on merge to main (#26144) 2025-03-15 08:55:41 -04:00
Jamie Strandboge ba7e6c6986
feat(python): update to python-build-standalone 3.13.2 (#26125)
* feat(python): update to python-build-standalone 3.13.2

References:
- https://github.com/influxdata/influxdb/issues/26044

* fix: update fetch-python-standalone.bash to properly set 'executable'

* fix: use PYO3_CONFIG_FILE to find PYTHONHOME.

* fix: add comment about PYO3_CONFIG_FILE.

* fix: remove ensure_pyo3().

* fix: add some sleep so catalog is updated.

---------

Co-authored-by: Jackson Newhouse <jnewhouse@influxdata.com>
2025-03-14 14:44:05 -05:00
Jamie Strandboge be2dc6ac35
fix(ci): update windows tarball to put dlls next to influxdb3.exe (#26137)
References:
- https://github.com/influxdata/influxdb/issues/26113
2025-03-13 21:35:58 -05:00
Jamie Strandboge 941e0e0f15
fix: updates for package validation with portable glibc builds (#26131)
* fix(circleci): add librt.so to list of acceptable libraries

* feat(circleci): check for glibc portability

* fix(circleci): remove rpm --nodeps workaround in rpm validate

Now that we have glibc portability in rpm builds, we no longer need the
'rpm --nodeps' workaround and can go back to 'yum localinstall'.

Closes #26011

* chore: update README_processing_engine.md for glibc portability
2025-03-13 12:25:31 -05:00
Jamie Strandboge 0983ecb542
feat(circleci): use portable glibc ci-cross-influxdb3 (#26124)
* feat(circleci): use portable glibc ci-cross-influxdb3

* chore: update build-dev job to conditionally persist debug builds
2025-03-12 11:10:08 -05:00
Trevor Hilton 586204d3cc
chore: disable release on merge to main for beta (#26115) 2025-03-10 17:14:45 -04:00
Jackson Newhouse 5fa417c3f0
feat: remove system-py (#26087)
* feat: remove system-py

* chore: allow Apache-2.0 WITH LLVM-exception license.
2025-03-10 11:10:33 -07:00
praveen-influx e46d3b8881
chore: rust ci job fix to address rustup 1.28.0 changes (#26099)
- activate toolchain explicitly
- add clippy and rustfmt components
2025-03-04 11:44:58 +00:00
Jamie Strandboge a82c13c260
chore: update to python 3.11.11+20250212 for libssl (#26049)
References:
- https://github.com/astral-sh/python-build-standalone/releases/tag/20250212
- https://github.com/astral-sh/python-build-standalone/commits/20250212/
2025-02-27 10:21:05 -06:00
Jamie Strandboge 7192aae536
fix: download aarch64 python with docker/arm64 (#26021)
https://github.com/influxdata/influxdb/issues/26020
2025-02-13 16:55:29 -06:00
Jamie Strandboge ccd5d22aab
feat: build and use python-build-standalone with official builds (#25969)
* feat(ci): fetch and configure for python-build-standalone binaries

* fix: make the process engine usable on windows

* feat(ci): build with python-build-standalone (and drop musl)

* fix(ci): set rpath on Linux and libpath on OSX in ci

* fix: set PYTHONHOME everywhere and PYTHONPATH on Windows

* chore(ci): update to use more recent ci-packager-next

* fix(ci): adjust validate to allow certain dynamically linked libraries

* chore: remove install_influxdb.sh (using install_influxdb3.sh instead)

* chore(install_influxdb3.sh): update for processing engine and release builds

* fix: temporarily use rpm --nodeps until compile with old GLIBC

* feat(ci): build docker with python-build-standalone

* chore: add README_processing_engine.md

* chore: add a few more details to README_processing_engine.md

* fix(ci): use patchelf --set-rpath

Not all patchelf versions support --add-rpath for appending to the
RPATH, but --set-path can be used with a colon-separated list. Use
--set-rpath first for maximum compatibility.

* chore: update README_processing_engine.md for standalone local builds

* fix(Dockerfile): also use patchelf --set-rpath

* chore: update code comment for accuracy

* chore: typos, grammar and formatting change in README_processing_engine.md

* chore: update README_processing_engine.md for Docker arm64 (thanks Jackson)
2025-02-13 16:16:05 -06:00
Jackson Newhouse 5b73485bef
feat: rework when docker builds and have main builds use release profile. (#25826) 2025-01-13 11:14:47 -08:00
Trevor Hilton d170f922e9
fix: package signing artifact names to use core not edge (#25808) 2025-01-12 09:11:44 -05:00
Paul Dix 674598e047
chore: only publish Docker for main (#25807) 2025-01-12 08:52:21 -05:00
Trevor Hilton 01f1f7fa35
chore: update artifact name to use core not edge (#25805) 2025-01-12 07:25:34 -05:00
Jackson Newhouse 07bddff7f4
feat: parameterize docker image name, use influxdb3-core. (#25802) 2025-01-11 15:43:33 -08:00
Jackson Newhouse c5a0fa736e
feat(docker): Rework docker builds to push to quay and be multi-arch. (#25800) 2025-01-11 14:39:39 -08:00
Trevor Hilton 3efd49066e
fix: bind to correct port for e2e tests (#25758)
* fix: bind to correct port for e2e tests

This also fixes up some log messages on server start for naming

* chore: do notpass value in TEST_LOG env var to CI tests
2025-01-07 12:23:59 -05:00
Brandon Pfeifer a043433760
chore: invalidate CloudFront on upload (#25651) 2024-12-12 16:00:23 -05:00
Brandon Pfeifer b2f6c1a0b6
feat: publish snapshot on merge to main (#25644) 2024-12-11 17:38:24 -05:00
Jamie Strandboge 277a6e0a87
chore(circleci): update to use language-checker (#25443) 2024-10-10 08:17:04 -05:00
Jamie Strandboge 0835093c78
feat(circleci): add inclusivity checks (#25437)
* feat(circleci): add inclusivity checks

* chore(circleci): adjust package-validation for inclusive language

* chore: update tests for inclusive language
2024-10-09 08:01:31 -05:00
praveen-influx 221e7600e0
chore: enable log for test failures (#25359) 2024-09-18 14:26:29 +01:00
Michael Gattozzi 2dae5c1093
feat: change CI to use cargo-nextest (#25339)
This changes our CI to use cargo-nextest which is faster and does not
have issues around global statics. Since it runs each test in it's
own process we don't have to worry about tests stepping on each other's
toes in this regard. It also updates the CI to ignore the current
cargo deny failure as we can't do anything until the arrow crates are
upgraded.
2024-09-16 16:41:49 -04:00
Brandon Pfeifer a5eba2f8f2
fix: only execute "build_dev" on non-fork branches (#25044) 2024-06-05 15:06:52 -04:00
Trevor Hilton 09fe268419
chore: clean up heappy, pprof, and jemalloc (#24967)
* chore: clean up heappy, pprof, and jemalloc

Setup the use of jemalloc as default allocator using tikv-jemallocator
crate instead of tikv-jemalloc-sys.

Removed heappy and pprof, and also cleaned up all the mutually exclusive
compiler flags for using heappy as the allocator.

* chore: remove heappy from ci
2024-05-06 15:21:18 -04:00
Michael Gattozzi c88cb5f093
feat: build binaries and Docker images in CI (#24751)
For releases we need to have Docker images and binary images available for the
user to actually run influxdb3. These CI changes will build the binaries on a
release tag and the Docker image as well, test, sign, and publish them and make
them available for download.

Co-Authored-By: Brandon Pfeifer <bpfeifer@influxdata.com>
2024-05-03 16:39:42 -04:00
Trevor Hilton e0465843be
feat: `/ping` API to serve version and revision (#24864)
* feat: /ping API to serve version

The /ping API was added, which is served at GET and
POST methods. The API responds with a JSON body
containing the version and revision of the build.

A new crate was added, influxdb3_process, which
takes the process_info.rs module from the influxdb3
crate, and puts it in a separate crate so that other
crates (influxdb3_server) can depend on it. This was
needed in order to have access to the version and
revision values, which are generated at build time,
in the HTTP API code of influxdb3_server.

A E2E test was added to check that /ping works.

E2E TestServer can now have logs emitted using the
TEST_LOG environment variable.
2024-04-01 16:57:10 -04:00
Michael Gattozzi a2984cdc17
chore: Update to Rust 1.77.0 (#24800)
* chore: Update to Rust 1.77.0

This is a fairly quiet upgrade. The only changes are some lints around
`OpenOptions` that were added to clippy between 1.75 and this version
and they're small changes that either remove unecessary function calls
or add a needed function call.

* fix: cargo-deny by using the --locked flag
2024-03-21 13:00:15 -04:00
Michael Gattozzi 1f8e079579
fix: slow limits test (#24761)
This commit re-enables the limits test after making a fix that has it
run <1 second on my laptop vs the old behavior of >=30 seconds. It does
so by constructing one single write_lp request to create 1995 tables
rather than 1995 individual requests that make a table. This is far more
efficient.
2024-03-12 15:51:23 -04:00
Trevor Hilton fad681c06c
chore: gate `limits` test behind a feature flag (#24737)
chore: gate limits test behind a feature flag
2024-03-06 14:37:38 -05:00
Michael Gattozzi 160ac34edd
fix: CircleCI image deprecations (#24725) 2024-03-04 11:59:22 -05:00
Michael Gattozzi 73e261c021
feat: Split out shared core crates from Edge (#24714)
This commit is a major refactor for the code base. It mainly does four
things:

1. Splits code shared between the internal IOx repository and this one
   into it's own repo over at https://github.com/influxdata/influxdb3_core
2. Removes any docs or anything else that did not relate to this project
3. Reorganizes the Cargo.toml files to use the top level Cargo.toml to
   declare dependencies and versions to keep all crates in sync and sets
   all others to use `<dep>.workspace = true` unless it's an optional
   dependency
4. Set the top level Cargo.toml to point to the core crates as git
   dependencies

With this any changes specific to Edge will be contained here, updating
deps will be a PR over in `influxdata/influxdb3_core`, and we can prove
out the viability for this model to use for IOx.
2024-02-29 16:21:41 -05:00
Brandon Pfeifer 3dcf2778d6
chore: remove unused CircleCI scripts (#24701) 2024-02-28 09:48:57 -05:00
Michael Gattozzi 8a68ae3f11
fix: Remove nightly CI build from Circle CI runs (#24637)
Prior to this change we've had CI fail nightly because we can't push the
image to CI due to permissions issues. The problem is that
influxdata/influxdb_iox is the one that actually has access to push that
data to quay.

This commit removes the nightly build and references to it as this image
is built nightly by the IOx team. If things break we have access to fix
it, but I don't think it'll be an issue.
2024-02-12 10:21:15 -05:00
Michael Gattozzi ff567cd33f
chore(deps): Update arrow and datafusion to 49.0.0 (#24605)
* chore(deps): Update arrow and datafusion to 49.0.0

This commit copies in our dependency code from influxdb_iox in order for
us to be able to upgrade from a forked version of 46.0.0 to 49.0.0 of
both arrow and datafusion. Most of the important changes were around how
we consumed the crates in influxdb3(_server/_write). Those diffs are
particularly worth looking at as the rest was a straight copy and we
don't touch those crates in our development currently for influxdb3
edge.

* fix: regenerate workspace hack crate

* fix: Protobuf issues with incompatibility labels

* fix: Broken CI yaml

* fix: buf version

* fix: Only check IOx repo

* fix: Remove protobuf lint

* fix: Comment out call to protobuf-lint
2024-01-31 19:18:51 -05:00
Michael Gattozzi 028a05fbde
fix: remove deploy step for images (#24566)
We currently don't need or want to deploy influxdb as we're still
building out the Edge product. Maybe later for a demo, but for now it
just breaks CI and so this removes it.
2024-01-10 13:51:19 -05:00