Skip to content
19 changes: 8 additions & 11 deletions .github/workflows/testEndToEnd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,17 @@ on:
pull_request:
types: [opened, reopened, synchronize]
schedule:
- cron: "44 4 * * *"
- cron: '44 4 * * *'

jobs:
testEverything:
strategy:
fail-fast: false
matrix:
python_version: ["3.11", "3.12", "3.13"]
operating_system: ["ubuntu-24.04", "macos-15", "windows-2022"]
python_version: ['3.12', '3.13', '3.14', '3.14t']
operating_system: ['ubuntu-24.04', 'macos-15', 'windows-2022']
#operating_system: ["ubuntu-20.04", "ubuntu-22.04", "macos-latest"]


runs-on: ${{ matrix.operating_system }}
steps:
#- name: Install Docker for macOS
Expand All @@ -36,11 +35,10 @@ jobs:
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python_version }}
architecture: "x64"
architecture: 'x64'

- name: Install Poetry
run:
python -m pip install poetry
run: python -m pip install poetry

- name: Install contentctl and activate the shell
run: |
Expand All @@ -50,7 +48,7 @@ jobs:
- name: Run contentctl init
run: |
cd my_splunk_content_pack
poetry run contentctl init
poetry run contentctl init

- name: Clone the AtomicRedTeam Repo
run: |
Expand All @@ -73,11 +71,10 @@ jobs:
run: |
cd my_splunk_content_pack
poetry run contentctl test --disable-tqdm --post-test-behavior never_pause

- uses: actions/upload-artifact@v4
with:
name: content_pack_${{ matrix.python_version }}_${{ matrix.operating_system }}
path: |
my_splunk_content_pack/dist/my_splunk_content_pack.tar.gz
my_splunk_content_pack/test_results/summary.yml

25 changes: 10 additions & 15 deletions .github/workflows/test_against_escu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,19 @@ on:
pull_request:
types: [opened, reopened, synchronize]
schedule:
- cron: "44 4 * * *"
- cron: '44 4 * * *'

jobs:
smoketest_escu:
strategy:
fail-fast: false
matrix:
python_version: ["3.11", "3.12", "3.13"]
operating_system: ["ubuntu-24.04", "macos-15"]
python_version: ['3.12', '3.13', '3.14', '3.14t']

operating_system: ['ubuntu-24.04', 'macos-15']
# Do not test against ESCU until known character encoding issue is resolved
# operating_system: ["ubuntu-20.04", "ubuntu-22.04", "macos-latest", "macos-14", "windows-2022"]


runs-on: ${{ matrix.operating_system }}
steps:
# Checkout the current branch of contentctl repo
Expand All @@ -32,7 +31,7 @@ jobs:
# Checkout the develop (default) branch of security_content
- name: Checkout repo
uses: actions/checkout@v5
with:
with:
path: security_content
repository: splunk/security_content

Expand All @@ -41,25 +40,22 @@ jobs:
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python_version }}
architecture: "x64"
architecture: 'x64'

- name: Install Poetry
run:
python -m pip install poetry
run: python -m pip install poetry

- name: Install contentctl and activate the shell
run: |
poetry install --no-interaction


- name: Clone the AtomicRedTeam Repo and the Mitre/CTI repos for testing enrichments
- name: Clone the AtomicRedTeam Repo and the Mitre/CTI repos for testing enrichments
run: |
cd security_content
git clone --single-branch https://github.com/redcanaryco/atomic-red-team external_repos/atomic-red-team
git clone --single-branch https://github.com/mitre/cti external_repos/cti


# We do not separately run validate and build
# We do not separately run validate and build
# since a build ALSO performs a validate
- name: Run contentctl build
run: |
Expand All @@ -68,4 +64,3 @@ jobs:

# Do not run a test - it will take far too long!
# Do not upload any artifacts

6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ contentctl = 'contentctl.contentctl:main'

[tool.poetry.dependencies]

python = "^3.11,<3.14"
pydantic = "~2.9.2"
python = "^3.11,<3.15"
pydantic = "^2"
PyYAML = "^6.0.2"
requests = ">=2.32.4"
pycvesearch = "^1.2"
Expand All @@ -32,7 +32,7 @@ pygit2 = "^1.15.1"
#have an issue when parsing an extremely large number of files
#(in our testing great than 130) when using the mode:selected
#--mode.files command.
tyro = "^0.9.2,<0.9.23"
tyro = "^1"
gitpython = "^3.1.43"
setuptools = ">=80.9.0"
rich = "^14.0.0"
Expand Down
Loading