Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into landerson/one-pipeline
Browse files Browse the repository at this point in the history
  • Loading branch information
randomanderson committed Jul 9, 2024
2 parents 851332d + d9912ed commit a4edee5
Show file tree
Hide file tree
Showing 1,020 changed files with 18,627 additions and 6,195 deletions.
31 changes: 28 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,10 @@ test_containers:
image: starburstdata/presto:332-e.9
- &presto_port 8080
- &container_mysql
image: mysql:5.6
image: mysql:8.0
# As of MySQL 8.0, caching_sha2_password is now the default authentication plugin
# rather than mysql_native_password which was the default in previous versions.
command: --default-authentication-plugin=mysql_native_password
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_PASSWORD=mysql
Expand Down Expand Up @@ -485,12 +488,17 @@ job_configuration:
<<: *filters_all_branches_and_tags
ruby_version: 'jruby-9.2.21.0'
image: ghcr.io/datadog/dd-trace-rb/jruby:9.2.21.0-dd
resource_class_to_use: medium+
resource_class_to_use: large
- &config-jruby-9_3
<<: *filters_all_branches_and_tags
ruby_version: 'jruby-9.3.9.0'
image: ghcr.io/datadog/dd-trace-rb/jruby:9.3.9.0-dd
resource_class_to_use: medium+
resource_class_to_use: large
- &config-jruby-9_4
<<: *filters_all_branches_and_tags
ruby_version: 'jruby-9.4.7.0'
image: ghcr.io/datadog/dd-trace-rb/jruby:9.4.7.0-dd
resource_class_to_use: large

workflows:
version: 2
Expand All @@ -515,6 +523,7 @@ workflows:
# ADD NEW RUBIES HERE
- test-jruby-9.2
- test-jruby-9.3
- test-jruby-9.4
- orb/changelog:
<<: *config-2_7-small
name: changelog
Expand Down Expand Up @@ -635,6 +644,14 @@ workflows:
name: test-jruby-9.3
requires:
- build-jruby-9.3
- orb/build:
<<: *config-jruby-9_4
name: build-jruby-9.4
- orb/test:
<<: *config-jruby-9_4
name: test-jruby-9.4
requires:
- build-jruby-9.4
# This workflow runs the same `build` and `test` jobs as above on a schedule.
# Tasks related to housekeeping (e.g. prerelease) are not relevant
# to this daily check, as they are not expected to be impacted here.
Expand Down Expand Up @@ -766,3 +783,11 @@ workflows:
name: test-jruby-9.3
requires:
- build-jruby-9.3
- orb/build:
<<: *config-jruby-9_4
name: build-jruby-9.4
- orb/test:
<<: *config-jruby-9_4
name: test-jruby-9.4
requires:
- build-jruby-9.4
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:2.7.6
FROM ruby:2.7.8-bullseye

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:3.3.0-bullseye
FROM ruby:3.0.7-bullseye

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:3.0.4-bullseye
FROM ruby:3.1.6-bookworm

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
Expand All @@ -15,7 +15,7 @@ RUN set -ex; \
apt-get install -y --no-install-recommends \
git mercurial xvfb \
locales sudo openssh-client ca-certificates tar gzip parallel \
net-tools netcat unzip zip bzip2 gnupg curl wget \
net-tools netcat-openbsd unzip zip bzip2 gnupg curl wget \
tzdata rsync vim less jq; \
rm -rf /var/lib/apt/lists/*;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:3.1.2-bullseye
FROM ruby:3.2.4-bookworm

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
Expand All @@ -15,7 +15,7 @@ RUN set -ex; \
apt-get install -y --no-install-recommends \
git mercurial xvfb \
locales sudo openssh-client ca-certificates tar gzip parallel \
net-tools netcat unzip zip bzip2 gnupg curl wget \
net-tools netcat-openbsd unzip zip bzip2 gnupg curl wget \
tzdata rsync vim less jq; \
rm -rf /var/lib/apt/lists/*;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:3.2.0-bullseye
FROM ruby:3.3.2-bookworm

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
Expand All @@ -15,7 +15,7 @@ RUN set -ex; \
apt-get install -y --no-install-recommends \
git mercurial xvfb \
locales sudo openssh-client ca-certificates tar gzip parallel \
net-tools netcat unzip zip bzip2 gnupg curl wget \
net-tools netcat-openbsd unzip zip bzip2 gnupg curl wget \
tzdata rsync vim less jq; \
rm -rf /var/lib/apt/lists/*;

Expand Down
65 changes: 65 additions & 0 deletions .circleci/images/primary/Dockerfile-3.4.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

FROM ruby:3.4.0-preview1-bookworm

# Make apt non-interactive
RUN echo 'APT::Get::Assume-Yes "true";' > /etc/apt/apt.conf.d/90circleci \
&& echo 'DPkg::Options "--force-confnew";' >> /etc/apt/apt.conf.d/90circleci

ENV DEBIAN_FRONTEND=noninteractive

# Install required packages
RUN set -ex; \
apt-get update; \
mkdir -p /usr/share/man/man1; \
apt-get install -y --no-install-recommends \
git mercurial xvfb \
locales sudo openssh-client ca-certificates tar gzip parallel \
net-tools netcat-openbsd unzip zip bzip2 gnupg curl wget \
tzdata rsync vim less jq; \
rm -rf /var/lib/apt/lists/*;

# Set timezone to UTC by default
RUN ln -sf /usr/share/zoneinfo/Etc/UTC /etc/localtime

# Set language
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en

# Install Docker
RUN set -ex \
&& export DOCKER_VERSION=$(curl --silent --fail --retry 3 https://download.docker.com/linux/static/stable/$(arch)/ | grep -o -e 'docker-[.0-9]*-ce\.tgz' | sort -r | head -n 1) \
&& DOCKER_URL="https://download.docker.com/linux/static/stable/$(arch)/${DOCKER_VERSION}" \
&& echo DOCKER_URL: $DOCKER_URL \
&& curl --silent --show-error --location --fail --retry 3 --output /tmp/docker.tgz "${DOCKER_URL}" \
&& ls -lha /tmp/docker.tgz \
&& tar -xz -C /tmp -f /tmp/docker.tgz \
&& mv /tmp/docker/* /usr/bin \
&& rm -rf /tmp/docker /tmp/docker.tgz \
&& which docker \
&& (docker version || true)

# Install Docker Compose
RUN COMPOSE_URL="https://github.com/linuxserver/docker-docker-compose/releases/download/1.29.2-ls51/docker-compose-$(dpkg --print-architecture)" \
&& echo COMPOSE_URL: $COMPOSE_URL \
&& curl --silent --show-error --location --fail --retry 3 --output /usr/bin/docker-compose $COMPOSE_URL \
&& chmod +x /usr/bin/docker-compose \
&& docker-compose version

# Install Dockerize
RUN DOCKERIZE_URL="https://github.com/powerman/dockerize/releases/download/v0.17.0/dockerize-$(uname -s | tr '[:upper:]' '[:lower:]')-$(arch | sed 's/aarch64/arm64/')" \
&& echo DOCKERIZE_URL: $DOCKERIZE_URL \
&& curl --silent --show-error --location --fail --retry 3 --output /usr/local/bin/dockerize $DOCKERIZE_URL \
&& chmod +x /usr/local/bin/dockerize \
&& dockerize --version

# Install RubyGems
RUN mkdir -p "$GEM_HOME" && chmod -R 777 "$GEM_HOME"

ENV BUNDLE_SILENCE_ROOT_WARNING 1

RUN mkdir /app
WORKDIR /app

CMD ["/bin/sh"]
13 changes: 1 addition & 12 deletions .circleci/images/primary/Dockerfile-jruby-9.2.21.0
Original file line number Diff line number Diff line change
@@ -1,17 +1,6 @@
# Note:
#
# There is an incompatibility between ethon and httprb on debian 11 bullseye.
# This is why this image is based on debian 10 buster.
#
# See:
# - https://github.com/jruby/jruby/issues/7033
# - https://github.com/DataDog/dd-trace-rb/pull/2380#issuecomment-1320994823

# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

# openjdk:8-jre image is from https://github.com/docker-library/openjdk/blob/a0c4da867ddd1a11408b7ec5032f12130bdc5476/8/jre/buster/Dockerfile
# note: docker-library/openjdk is deprecated, there is a later move to https://hub.docker.com/_/eclipse-temurin
FROM openjdk:8-jre-buster AS jruby-9.2.21.0-jre8
FROM eclipse-temurin:8-jammy AS jruby-9.2.21.0-jre8

RUN apt-get update && apt-get install -y libc6-dev --no-install-recommends && rm -rf /var/lib/apt/lists/*

Expand Down
13 changes: 1 addition & 12 deletions .circleci/images/primary/Dockerfile-jruby-9.3.9.0
Original file line number Diff line number Diff line change
@@ -1,17 +1,6 @@
# Note:
#
# There is an incompatibility between ethon and httprb on debian 11 bullseye.
# This is why this image is based on debian 10 buster.
#
# See:
# - https://github.com/jruby/jruby/issues/7033
# - https://github.com/DataDog/dd-trace-rb/pull/2380#issuecomment-1320994823

# Note: See the "Publishing updates to images" note in ./README.md for how to publish new builds of this container image

# openjdk:11-jre image is from https://github.com/docker-library/openjdk/blob/8dfb0c5645098b8c330c4811c8228cae52f18388/11/jre/buster/Dockerfile
# note: docker-library/openjdk is deprecated, there is a later move to https://hub.docker.com/_/eclipse-temurin
FROM openjdk:11-jre-buster AS jruby-9.3.9.0-jre11
FROM eclipse-temurin:11-jammy AS jruby-9.3.9.0-jre11

RUN apt-get update && apt-get install -y libc6-dev --no-install-recommends && rm -rf /var/lib/apt/lists/*

Expand Down
1 change: 0 additions & 1 deletion .circleci/images/primary/Dockerfile-jruby-9.4.7.0
Original file line number Diff line number Diff line change
Expand Up @@ -106,4 +106,3 @@ RUN mkdir /app
WORKDIR /app

CMD ["/bin/sh"]

2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
name: Bug report
name: 🐛 Bug report
about: File a bug report
title: ''
labels: community, bug
Expand Down
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: ℹ️ Datadog Support
url: https://www.datadoghq.com/support/
about: Get help from the Datadog support team
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
name: Feature request
name: 💡 Feature request
about: Suggest an idea for this project
title: ''
labels: community, feature-request
Expand Down
23 changes: 13 additions & 10 deletions .github/workflows/build-ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,20 +28,23 @@ jobs:
version: 2.6.10
dockerfile: Dockerfile-2.6.10
- engine: ruby
version: 2.7.6
dockerfile: Dockerfile-2.7.6
version: 2.7.8
dockerfile: Dockerfile-2.7.8
- engine: ruby
version: 3.0.4
dockerfile: Dockerfile-3.0.4
version: 3.0.7
dockerfile: Dockerfile-3.0.7
- engine: ruby
version: 3.1.2
dockerfile: Dockerfile-3.1.2
version: 3.1.6
dockerfile: Dockerfile-3.1.6
- engine: ruby
version: 3.2.0
dockerfile: Dockerfile-3.2.0
version: 3.2.4
dockerfile: Dockerfile-3.2.4
- engine: ruby
version: 3.3.0
dockerfile: Dockerfile-3.3.0
version: 3.3.2
dockerfile: Dockerfile-3.3.2
- engine: ruby
version: 3.4.0
dockerfile: Dockerfile-3.4.0
# ADD NEW RUBIES HERE
- engine: jruby
version: 9.2.21.0
Expand Down
25 changes: 25 additions & 0 deletions .github/workflows/datadog-sca.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
on: [push]

name: Datadog Software Composition Analysis

jobs:
software-composition-analysis:
runs-on: ubuntu-latest
name: Datadog SBOM Generation and Upload
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true
ruby-version: "3.3"
- name: Check imported libraries are secure and compliant
id: datadog-software-composition-analysis
uses: DataDog/datadog-sca-github-action@main
with:
dd_api_key: ${{ secrets.DD_API_KEY }}
dd_app_key: ${{ secrets.DD_APP_KEY }}
dd_service: dd-trace-rb
dd_env: ci
dd_site: datadoghq.com
21 changes: 21 additions & 0 deletions .github/workflows/datadog-static-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
on: [push]

name: Datadog Static Analysis

jobs:
static-analysis:
runs-on: ubuntu-latest
name: Datadog Static Analyzer
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Check code meets quality and security standards
id: datadog-static-analysis
uses: DataDog/datadog-static-analyzer-github-action@v1
with:
dd_api_key: ${{ secrets.DD_API_KEY }}
dd_app_key: ${{ secrets.DD_APP_KEY }}
dd_service: dd-trace-rb
dd_env: ci
dd_site: datadoghq.com
cpu_count: 2
4 changes: 2 additions & 2 deletions .github/workflows/system-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -302,10 +302,10 @@ jobs:
if: ${{ always() }}
name: Aggregate (${{ matrix.app }})
steps:
- name: Setup python 3.9
- name: Setup python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.9'
python-version: '3.12'
- name: Checkout
uses: actions/checkout@v4
with:
Expand Down
39 changes: 0 additions & 39 deletions .github/workflows/test-head.yaml

This file was deleted.

Loading

0 comments on commit a4edee5

Please sign in to comment.