diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index d6d79b6fc3..0000000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,222 +0,0 @@ ---- -name: CI -on: - pull_request: - push: -jobs: - test_go: - name: Go tests - runs-on: ubuntu-latest - # Whenever the Go version is updated here, .promu.yml - # should also be updated. - container: - image: quay.io/prometheus/golang-builder:1.19-base - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/setup_environment - - run: make GO_ONLY=1 SKIP_GOLANGCI_LINT=1 - - run: go test ./tsdb/ -test.tsdb-isolation=false - - run: go test --tags=stringlabels ./... - - run: GOARCH=386 go test ./cmd/prometheus - - run: make -C documentation/examples/remote_storage - - run: make -C documentation/examples - - uses: ./.github/promci/actions/check_proto - with: - version: "3.15.8" - - test_ui: - name: UI tests - runs-on: ubuntu-latest - # Whenever the Go version is updated here, .promu.yml - # should also be updated. - container: - image: quay.io/prometheus/golang-builder:1.19-base - - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/setup_environment - with: - enable_go: false - enable_npm: true - - run: make assets-tarball - - run: make ui-lint - - run: make ui-test - - uses: ./.github/promci/actions/save_artifacts - with: - directory: .tarballs - - test_windows: - name: Go tests on Windows - runs-on: windows-latest - steps: - - uses: actions/checkout@v3 - - uses: actions/setup-go@v3 - with: - go-version: '>=1.19 <1.20' - - run: | - $TestTargets = go list ./... | Where-Object { $_ -NotMatch "(github.com/prometheus/prometheus/discovery.*|github.com/prometheus/prometheus/config|github.com/prometheus/prometheus/web)"} - go test $TestTargets -vet=off -v - shell: powershell - - test_golang_oldest: - name: Go tests with previous Go version - runs-on: ubuntu-latest - # The go verson in this image should be N-1 wrt test_go. - container: - image: quay.io/prometheus/golang-builder:1.18-base - steps: - - uses: actions/checkout@v3 - - run: make build - - run: go test ./tsdb/... - - run: go test ./tsdb/ -test.tsdb-isolation=false - - test_mixins: - name: Mixins tests - runs-on: ubuntu-latest - # Whenever the Go version is updated here, .promu.yml - # should also be updated. - container: - image: quay.io/prometheus/golang-builder:1.19-base - steps: - - uses: actions/checkout@v3 - - run: go install ./cmd/promtool/. - - run: go install github.com/google/go-jsonnet/cmd/jsonnet@latest - - run: go install github.com/google/go-jsonnet/cmd/jsonnetfmt@latest - - run: go install github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb@latest - - run: make -C documentation/prometheus-mixin clean - - run: make -C documentation/prometheus-mixin jb_install - - run: make -C documentation/prometheus-mixin - - run: git diff --exit-code - - build: - name: Build Prometheus for common architectures - runs-on: ubuntu-latest - if: | - !(github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.')) - && - !(github.event_name == 'pull_request' && startsWith(github.event.pull_request.base.ref, 'release-')) - && - !(github.event_name == 'push' && github.event.ref == 'refs/heads/main') - strategy: - matrix: - thread: [ 0, 1, 2 ] - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/build - with: - promu_opts: "-p linux/amd64 -p windows/amd64 -p linux/arm64 -p darwin/amd64 -p darwin/arm64 -p linux/386" - parallelism: 3 - thread: ${{ matrix.thread }} - build_all: - name: Build Prometheus for all architectures - runs-on: ubuntu-latest - if: | - (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.')) - || - (github.event_name == 'pull_request' && startsWith(github.event.pull_request.base.ref, 'release-')) - || - (github.event_name == 'push' && github.event.ref == 'refs/heads/main') - strategy: - matrix: - thread: [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ] - - # Whenever the Go version is updated here, .promu.yml - # should also be updated. - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/build - with: - parallelism: 12 - thread: ${{ matrix.thread }} - golangci: - name: golangci-lint - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v3 - - name: Install Go - uses: actions/setup-go@v3 - with: - go-version: 1.20.x - - name: Install snmp_exporter/generator dependencies - run: sudo apt-get update && sudo apt-get -y install libsnmp-dev - if: github.repository == 'prometheus/snmp_exporter' - - name: Lint - uses: golangci/golangci-lint-action@v3.4.0 - with: - version: v1.51.2 - fuzzing: - uses: ./.github/workflows/fuzzing.yml - if: github.event_name == 'pull_request' - codeql: - uses: ./.github/workflows/codeql-analysis.yml - - publish_main: - name: Publish main branch artifacts - runs-on: ubuntu-latest - needs: [test_ui, test_go, test_windows, golangci, codeql, build_all] - if: github.event_name == 'push' && github.event.ref == 'refs/heads/main' - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/publish_main - with: - docker_hub_login: ${{ secrets.docker_hub_login }} - docker_hub_password: ${{ secrets.docker_hub_password }} - quay_io_login: ${{ secrets.quay_io_login }} - quay_io_password: ${{ secrets.quay_io_password }} - publish_release: - name: Publish release arfefacts - runs-on: ubuntu-latest - needs: [test_ui, test_go, test_windows, golangci, codeql, build_all] - if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.') - steps: - - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - uses: ./.github/promci/actions/publish_release - with: - docker_hub_login: ${{ secrets.docker_hub_login }} - docker_hub_password: ${{ secrets.docker_hub_password }} - quay_io_login: ${{ secrets.quay_io_login }} - quay_io_password: ${{ secrets.quay_io_password }} - github_token: ${{ secrets.PROMBOT_GITHUB_TOKEN }} - publish_ui_release: - name: Publish UI on npm Registry - runs-on: ubuntu-latest - needs: [test_ui, codeql] - steps: - - name: Checkout - uses: actions/checkout@v3 - - uses: prometheus/promci@v0.0.2 - - name: Install nodejs - uses: actions/setup-node@v3 - with: - node-version-file: "web/ui/.nvmrc" - registry-url: "https://registry.npmjs.org" - - uses: actions/cache@v3.2.4 - with: - path: ~/.npm - key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-node- - - name: Check libraries version - if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.') - run: ./scripts/ui_release.sh --check-package "$(echo ${{ github.ref_name }}|sed s/v2/v0/)" - - name: build - run: make assets - - name: Copy files before publishing libs - run: ./scripts/ui_release.sh --copy - - name: Publish dry-run libraries - if: "!(github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.'))" - run: ./scripts/ui_release.sh --publish dry-run - - name: Publish libraries - if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v2.') - run: ./scripts/ui_release.sh --publish - env: - # The setup-node action writes an .npmrc file with this env variable - # as the placeholder for the auth token - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/RELEASE.md b/RELEASE.md index 360a1d7484..776164ced7 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -47,7 +47,7 @@ Release cadence of first pre-releases being cut is 6 weeks. | v2.40 | 2022-11-02 | Ganesh Vernekar (GitHub: @codesome) | | v2.41 | 2022-12-14 | Julien Pivotto (GitHub: @roidelapluie) | | v2.42 | 2023-01-25 | Kemal Akkoyun (GitHub: @kakkoyun) | -| v2.43 | 2023-03-08 | **searching for volunteer** | +| v2.43 | 2023-03-08 | Julien Pivotto (GitHub: @roidelapluie) | | v2.44 | 2023-04-19 | **searching for volunteer** | If you are interested in volunteering please create a pull request against the [prometheus/prometheus](https://github.com/prometheus/prometheus) repository and propose yourself for the release series of your choice. diff --git a/promql/value.go b/promql/value.go index 4db976e979..91904dda25 100644 --- a/promql/value.go +++ b/promql/value.go @@ -82,7 +82,7 @@ func (s Series) String() string { func (s Series) MarshalJSON() ([]byte, error) { // Note that this is rather inefficient because it re-creates the whole // series, just separated by Histogram Points and Value Points. For API - // purposes, there is a more efficcient jsoniter implementation in + // purposes, there is a more efficient jsoniter implementation in // web/api/v1/api.go. series := struct { M labels.Labels `json:"metric"`