Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
b1cfa19
initial zstandard compression for parameters and results; also remove…
guzzijones Jun 22, 2023
9da19e2
fix test_executions_fixtures.py tests
guzzijones Jun 23, 2023
f355eed
index liveaction
guzzijones Jun 23, 2023
96c0d72
fix action_chain unit testing
guzzijones Jun 23, 2023
3c4ed32
fix execution1.yaml fixture for rule enforcement testing
guzzijones Jun 23, 2023
84f640e
black reformat, fix log format string
guzzijones Jun 23, 2023
07ed858
fix test_garbage_collector.py integration test
guzzijones Jun 23, 2023
09188f7
black formatting
guzzijones Jun 23, 2023
4814493
black fixes for contrib
guzzijones Jun 23, 2023
402cf7a
fix lint errors
guzzijones Jun 23, 2023
9781591
fix migration test for 3.5
guzzijones Jul 3, 2023
1bdd067
black format v35 unit test
guzzijones Jul 3, 2023
737c6a5
set actual byte size in result_size field instead of compressed size
guzzijones Jul 3, 2023
71ced16
setting maxDiff to see errors
guzzijones Jul 3, 2023
fad7147
remove traceback
guzzijones Jul 3, 2023
7428abb
change log entry
guzzijones Jul 3, 2023
6b8d991
use errors list instead of original execution.errors
guzzijones Jul 3, 2023
700e26a
test each error individually
guzzijones Jul 3, 2023
33f6227
benchmarks and integration test
guzzijones Jul 5, 2023
c9d2b51
black fixes
guzzijones Jul 5, 2023
61e460f
fix lint error
guzzijones Jul 5, 2023
29105ab
fix output in integration test
guzzijones Jul 5, 2023
0ee2e42
add migration for liveaction
guzzijones Jul 5, 2023
6c328e1
remove sym link migration
guzzijones Jul 5, 2023
07caa0d
add migration script for execution db liveaction
guzzijones Jul 5, 2023
7e43a36
add config option to turn off zstandard compression
guzzijones Jul 6, 2023
9ffb8c3
black formatting
guzzijones Jul 6, 2023
c255e63
fix version on migration script
guzzijones Jul 6, 2023
037c99d
update sample config
guzzijones Jul 6, 2023
e6d14ce
initial header compression
guzzijones Jul 13, 2023
10d801c
add new conf setting for zstandard
guzzijones Jul 13, 2023
7bb07f6
add ability to change compression via config setting
guzzijones Jul 13, 2023
4e777cb
black changes
guzzijones Jul 13, 2023
349a92a
Update st2common/bin/migrations/v3.9/st2-migrate-liveaction-executiondb
guzzijones Jul 14, 2023
6801f0d
Update st2common/bin/migrations/v3.9/st2-migrate-liveaction-executiondb
guzzijones Jul 14, 2023
5dee691
change liveaction to liveaction_id; also move inquiry mask code into …
guzzijones Jul 14, 2023
ad2da57
remove liveaction from action execution api
guzzijones Jul 14, 2023
7e75e49
Merge remote-tracking branch 'ajgithub/zstandard' into zstandard
guzzijones Jul 14, 2023
8ac832b
black fixes
guzzijones Jul 14, 2023
c7f6088
untested migration script
guzzijones Jul 14, 2023
11f3c55
flake fixes
guzzijones Jul 14, 2023
17396ee
fix test actionchain liveaction
guzzijones Jul 14, 2023
4183d65
import fixes
guzzijones Jul 14, 2023
5b3fa0b
fix inquiry ttl liveaction_id
guzzijones Jul 14, 2023
de94c1d
zipp <=3.16 for python 3.6 compatibility
guzzijones Jul 14, 2023
9076486
zipp requirement for python 3.6
guzzijones Jul 14, 2023
f405c12
pin zipp < 3.16
guzzijones Jul 14, 2023
9c0e931
liveaction return inside actionexecution api
guzzijones Jul 17, 2023
4d7fb2a
fix unit tests to allow embedded liveaction
guzzijones Jul 17, 2023
6b1e3d3
fix stream test
guzzijones Jul 17, 2023
291e854
add back array params test for alias execution
guzzijones Jul 17, 2023
9cfe9de
migration script change
guzzijones Jul 17, 2023
5aa9f26
Update st2common/st2common/models/api/execution.py
guzzijones Jul 18, 2023
96e62f9
compress and uncompress methods
guzzijones Jul 19, 2023
ad81427
Merge remote-tracking branch 'ajgithub/zstandard' into zstandard
guzzijones Jul 19, 2023
835888b
fix import error compress and uncompress
guzzijones Jul 19, 2023
b9f3698
add test for st2.inquiry.respond secret masking
guzzijones Jul 19, 2023
c1888dc
black formatting fix
guzzijones Jul 19, 2023
874090e
lint fixes
guzzijones Jul 19, 2023
797932b
fix migration
guzzijones Jul 19, 2023
a3cc738
add inheritance
guzzijones Jul 19, 2023
f400f3c
pymongo query for setting liveaction id
guzzijones Jul 19, 2023
7a2309c
working migration script
guzzijones Jul 19, 2023
fcc75df
black fix
guzzijones Jul 19, 2023
4657db7
add required fields for liveaction in case where liveaction cannot be…
guzzijones Jul 19, 2023
8929b94
remove breakpoint
guzzijones Jul 19, 2023
a7637b3
Update st2common/st2common/fields.py
guzzijones Jul 23, 2023
6ca7ce7
migrate paused inquiries
guzzijones Jul 31, 2023
8349195
Merge remote-tracking branch 'ajgithub/zstandard' into zstandard
guzzijones Jul 31, 2023
c729560
lm specific commit; work in environment
guzzijones Aug 2, 2023
b68d71c
sedrequirements
Sep 19, 2023
a236121
remove vcs requirements.txt
Sep 21, 2023
c12976a
remove vcs
Sep 21, 2023
cd1319a
v5.0.0
Sep 21, 2023
302c499
add pack tests
Sep 21, 2023
d7ec7d2
fix drop database
Sep 21, 2023
ce9e7ca
skip some more tests
Sep 21, 2023
eead5ff
Update .gitlab-ci.yml
ajjonen Sep 22, 2023
21c1856
pass without exception if jinja parameter isn't found
ajjonen Dec 20, 2023
03f1987
Update .gitlab-ci.yml
ajjonen Dec 21, 2023
9b822bc
Update .gitlab-ci.yml; try using ssh key
ajjonen Dec 21, 2023
0c22bcc
Update .gitlab-ci.yml
ajjonen Dec 21, 2023
9c94945
Update .gitlab-ci.yml
ajjonen Dec 21, 2023
0f5a086
Update .gitlab-ci.yml
ajjonen Dec 21, 2023
ef7e2c3
Update .gitlab-ci.yml
ajjonen Dec 21, 2023
c8ff2a0
Update .gitlab-ci.yml; use orchestration_gat_read
ajjonen Dec 21, 2023
fb261eb
remove a debug
ajjonen Dec 21, 2023
37a81b2
do not fail if parameter is not found
guzzijones Dec 21, 2023
328ae87
Merge branch 'embedded_jinja' into 'lmbuild'
ajjonen Jan 12, 2024
c29a8b4
bump version
guzzijones Jan 12, 2024
a30abcf
Merge branch 'new_version' into 'lmbuild'
ajjonen Jan 12, 2024
ad5ebca
bump version to 5.2
guzzijones Jan 30, 2024
a69158a
adjust key
guzzijones Jan 31, 2024
041df8c
try deleting file after paused
guzzijones Jan 31, 2024
62110ec
try class parrallel
guzzijones Jan 31, 2024
bb73994
try no parrallel
guzzijones Jan 31, 2024
93fb94f
Merge branch 'version_bump52' into 'lmbuild'
ajjonen Jan 31, 2024
1761777
check if template exists
guzzijones Mar 18, 2024
92a0252
add additional non existent jinja template to test neighbors
guzzijones Mar 18, 2024
ab0dae5
skip action chain
guzzijones Mar 18, 2024
1110389
skip another test
guzzijones Mar 18, 2024
fb0b4fc
whitespace
guzzijones Mar 18, 2024
e1a937a
remove action chain tests
guzzijones Mar 18, 2024
728d467
version bump 5.3
guzzijones Mar 19, 2024
0dcab64
fix conflicts
guzzijones Mar 19, 2024
a7a47a9
Merge branch 'neighbor' into 'lmbuild'
ajjonen Mar 19, 2024
a6a0123
Update .gitlab-ci.yml
ajjonen Dec 17, 2024
66897f2
encode to determine size
guzzijones Dec 17, 2024
f5ffae9
Merge remote-tracking branch 'origin/lmbuild' into encode_object
guzzijones Dec 17, 2024
4840f26
whitespace
guzzijones Dec 17, 2024
48d655a
Revert "whitespace"
ajjonen Dec 17, 2024
6c68dc5
merge upstream
guzzijones May 14, 2025
7009243
working build
guzzijones May 21, 2025
83cdcb0
add submodules
guzzijones May 23, 2025
012dd3f
remove sub
guzzijones May 23, 2025
5a1e45b
add submodule
guzzijones May 23, 2025
e79c40e
skip a test due to bug fix at lm
guzzijones May 23, 2025
c20ccdb
copyright
guzzijones May 27, 2025
fd6230d
Merge branch 'encode_object' into 'lmbuild'
ajjonen May 28, 2025
07462fb
python3.11 mongo bump
guzzijones May 28, 2025
664971c
gitlab-ci.yaml
guzzijones May 28, 2025
c8e21a2
Merge remote-tracking branch 'origin/lmbuild' into upstream
guzzijones May 29, 2025
22f4c8e
update gitlab ci
guzzijones May 29, 2025
37f2fee
add openldap
guzzijones May 29, 2025
2c9e8b7
fix config
guzzijones May 29, 2025
992616e
fix mongo
guzzijones May 29, 2025
bc1271c
mongo
guzzijones May 29, 2025
1e9166a
update mongosh rpm
guzzijones Jun 4, 2025
34bb1ba
mongosh
guzzijones Jun 4, 2025
63fb751
use mymongo
guzzijones Jun 4, 2025
e559842
black
guzzijones Jun 4, 2025
8170463
alpine
guzzijones Jun 5, 2025
8a6214f
mongo server
guzzijones Jun 5, 2025
a37edc4
content folder
guzzijones Jun 5, 2025
3b3ad4f
redis host env var
guzzijones Jun 5, 2025
daaa455
redis setting
guzzijones Jun 5, 2025
1983ad6
move hanging test
guzzijones Jun 9, 2025
0d71a98
cannot sudo orquests testing
guzzijones Jun 9, 2025
36a8f7c
remove comments
guzzijones Jun 12, 2025
678d607
black fix
guzzijones Jun 12, 2025
92e8fc9
sleep before connecting
guzzijones Jun 12, 2025
c42056f
add more tags
guzzijones Jun 16, 2025
48a0f6f
try rpm_mock
guzzijones Jun 16, 2025
a572cdc
use st2_mongo instead
guzzijones Jun 16, 2025
302a88f
whitespace
guzzijones Jun 16, 2025
c3770d5
make virtualenv
guzzijones Jun 16, 2025
66b261f
cd
guzzijones Jun 16, 2025
2e102a6
do not reset
guzzijones Jun 16, 2025
564f069
st2common test
guzzijones Jun 16, 2025
2d82746
overide timeout
guzzijones Jun 16, 2025
fab7838
set timeout 3000
guzzijones Jun 16, 2025
45bb8d0
make unit tests
guzzijones Jun 16, 2025
a565d31
Merge branch 'upstream' into 'lmbuild'
ajjonen Jun 16, 2025
aa2f149
version bump
guzzijones Jun 16, 2025
d94575d
bump default python version
guzzijones Jun 16, 2025
c42dbde
Merge branch 'upstream' into 'lmbuild'
ajjonen Jun 16, 2025
a2c5e7b
merge upstream
guzzijones Feb 3, 2026
7b1e737
auth check
guzzijones Feb 3, 2026
fc38051
add purelib
guzzijones Feb 4, 2026
9595714
rollback on rabbit message failure
guzzijones May 11, 2026
b5718a1
version bump
guzzijones May 13, 2026
b22b37a
Merge branch 'throw' into 'lmbuild'
ajjonen May 13, 2026
4c92c97
catch base exception to just catch everything including none type has…
guzzijones May 18, 2026
fc77e5f
proper max connections
guzzijones May 18, 2026
a6ccb26
recreate configgen
guzzijones May 18, 2026
e133db7
Merge branch 'throw' into 'lmbuild'
ajjonen May 18, 2026
255bfac
version 5.7dev
guzzijones May 18, 2026
0241e30
Merge branch 'throw' into 'lmbuild'
ajjonen May 18, 2026
564ff9b
retry
guzzijones May 18, 2026
894cb35
consumer proper retry limit
guzzijones May 18, 2026
4b0371b
configgen
guzzijones May 18, 2026
e724eeb
5.8dev
guzzijones May 18, 2026
b6367df
Merge branch 'throw' into 'lmbuild'
ajjonen May 18, 2026
ac8d291
just catch base and raise; add unit test for consumer
guzzijones May 19, 2026
0321c62
5.9dev
guzzijones May 19, 2026
eb3aaed
Merge branch 'throw' into 'lmbuild'
ajjonen May 19, 2026
930015f
scheduler retries fixed
guzzijones May 19, 2026
5773221
remove no rollback on other exceptions test
guzzijones May 19, 2026
525e7a5
remove exception catch
guzzijones May 19, 2026
a490c93
Merge branch 'throw' into 'lmbuild'
ajjonen May 19, 2026
df6b61c
5.10dev
guzzijones May 19, 2026
c8fd668
Merge branch 'throw' into 'lmbuild'
ajjonen May 19, 2026
38717f1
5.11 plus fixes for reactor and scheduler
guzzijones May 19, 2026
82ea229
Merge branch 'throw' into 'lmbuild'
ajjonen May 19, 2026
515ef74
add engine shutdown to all exceptions like rabbitmq; abandon workflows
guzzijones May 19, 2026
fbc3c1c
Merge branch 'throw' into 'lmbuild'
ajjonen May 20, 2026
8f18ab5
bootstrap scheduler
guzzijones May 20, 2026
1a9c345
Merge branch 'throw' into 'lmbuild'
ajjonen May 20, 2026
003a045
bootstrap scheduler requested on intermittent rabbitmq failure withou…
guzzijones May 21, 2026
a57207a
allow duplicate config registry. fix entrypoint failure testing
guzzijones May 26, 2026
5cf8bfb
Merge branch 'throw' into 'lmbuild'
ajjonen May 26, 2026
2f7ba7e
set workflows to paused on complete failure
guzzijones May 26, 2026
d491695
pause workflows
guzzijones May 26, 2026
1a4a491
Merge branch 'throw' into 'lmbuild'
ajjonen May 26, 2026
d26302b
shutdown change
guzzijones May 27, 2026
444335a
version bump
guzzijones May 27, 2026
095b36e
Merge branch 'throw' into 'lmbuild'
ajjonen May 27, 2026
737a55f
refactor: consolidate workflow pause logic and improve error handling
guzzijones May 27, 2026
20c4152
feat: pause running workflows on connection failure before shutdown
guzzijones May 27, 2026
63d8cc4
fix: pause workflows and exit cleanly on connection failure
guzzijones May 27, 2026
ec76e32
refactor: rename pause workflows method and remove custom queue consumer
guzzijones May 27, 2026
4a6c2ef
black fixes pylint fixes
guzzijones May 28, 2026
cdc0c49
black
guzzijones May 28, 2026
3f99c84
pylint
guzzijones May 28, 2026
c9d91ef
remove resuming; add initial check for resuming based on service regi…
guzzijones May 29, 2026
21fc7a9
fix testing for shutdown
guzzijones May 29, 2026
716cc33
fix shutdown test
guzzijones May 29, 2026
809793d
fix unit test to reflect shutdown only
guzzijones May 29, 2026
a98c27a
fix restart test
guzzijones May 29, 2026
32bc3dc
add logging
guzzijones May 29, 2026
8e1de44
Merge branch 'throw' into 'lmbuild'
ajjonen May 29, 2026
8d978eb
version bump
guzzijones May 29, 2026
8c8010d
Merge branch 'throw' into 'lmbuild'
ajjonen May 29, 2026
54222d0
remove jsonschema version
guzzijones Aug 25, 2026
b0ab5c0
Merge remote-tracking branch 'origin/lmbuild' into lmbuild
guzzijones Aug 25, 2026
3e57654
add automatic bootstrap of workflows paused by prior engine shutdown
guzzijones Aug 25, 2026
d5ee713
CHANGELOG: automatic bootstrap of paused workflows and st2-bootstrap-…
guzzijones Aug 26, 2026
73979b3
merge upstream; fix conflicts; add wf engine b down a up fix
guzzijones Aug 28, 2026
71a9a62
workflow engine b down and a up no schedule for resume
guzzijones Aug 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -78,3 +78,4 @@ benchmark_histograms/
[._]sw[a-p]x

**/build/lib/**
.aider*
77 changes: 77 additions & 0 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
checks:
tags:
- el8
- packaging
- rpm_mock
- venv
stage: checks
variables:
GITLAB_TOKEN_U: ORCHESTRATION_GAT
GITLAB_TOKEN_K: $ORCHESTRATION_GAT_READ_2
PYTHON_VERSION: python3.11
before_script:
- yum --enablerepo epel install -y ShellCheck
- yum --enablerepo rocky8_app_stream install -y python3.11-devel
- yum --enablerepo rocky8_base_os install -y openldap-devel
script:
- make requirements
- make ci-checks
rules:
- if: '($CI_PIPELINE_SOURCE == "push")'

unittests:
tags:
- el8
- packaging
- rpm_mock
- venv
stage: unittests
variables:
GITLAB_TOKEN_U: ORCHESTRATION_GAT
GITLAB_TOKEN_K: $ORCHESTRATION_GAT_READ_2
FF_NETWORK_PER_BUILD: 1
ST2_OVERRIDE_HOST: mymongo
# tests actually expect coordinator to be off
ST2TESTS_REDIS_HOST: redis
ST2_MONGO: mymongo
ST2_DB_CONNECTION_TIMEOUT: 60000 # milliseconds
ST2_MESSAGING_HOST: rabbitmq
DOCKER_DRIVER: overlay2
CONTENT_FOLDER: st2tests/st2tests/fixtures/packs/test_content_version
PYTHON_VERSION: python3.11

services:
- name: harbor.global.lmco.com/ext.hub.docker.com/library/mongo:7.0.20
alias: mymongo
- name: harbor.global.lmco.com/ext.hub.docker.com/library/redis:7.4-alpine
alias: redis
- name: harbor.global.lmco.com/ext.hub.docker.com/library/rabbitmq:3.13-management-alpine
alias: rabbitmq


before_script:
- rm -rf $CONTENT_FOLDER
- git clone https://$GITLAB_TOKEN_U:$GITLAB_TOKEN_K@gitlab.ifp.lmco.com/orchestration/stackstorm/stackstorm-test-content-version $CONTENT_FOLDER
- yum --enablerepo lmprod install -y sudo mongodb-mongosh bind-utils
- yum --enablerepo rocky8_app_stream install -y python3.11-devel
- yum --enablerepo rocky8_base_os install -y openldap-devel
- time mongosh mymongo/admin
- useradd stanley
- time nslookup mymongo

script:
- export ST2_MONGO=$(dig +short mymongo | head -n1)
- echo $ST2_MONGO
- make requirements
#- >
#. virtualenv/bin/activate; pytest
#-rx --verbose st2common/tests/unit/
- make unit-tests

rules:
- if: '($CI_PIPELINE_SOURCE == "push")'


stages:
- checks
- unittests
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
[submodule "st2tests/st2tests/fixtures/packs/test_content_version"]
path = st2tests/st2tests/fixtures/packs/test_content_version
url = https://github.com/StackStorm-Exchange/stackstorm-test-content-version.git
url = git@gitlab.ifp.lmco.com:orchestration/stackstorm/stackstorm-test-content-version.git
82 changes: 82 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,91 @@ Changelog

in development
--------------
* Automatic bootstrap of workflows paused by prior engine shutdown
Contributed by @guzzijones12.

When ``st2workflowengine`` shuts down gracefully it marks the
workflows it was actively processing as PAUSED with a
``paused_by=workflow_engine_start_stop_seq`` marker on the
``LiveAction.context``. Prior to this change those workflows would
remain paused until an operator manually resumed each one.

This adds an automatic bootstrap loop that runs periodically after
engine startup, plus a manual ``st2-bootstrap-workflow`` CLI as an
operator escape hatch.

**Behavior.**

* At engine startup, after the initial health check passes, spawn a
bootstrap greenthread that iterates every ``bootstrap_interval``
seconds (default 900) for up to ``bootstrap_duration`` seconds
(default 3600). Each pass queries LiveActions with
``status=paused`` and
``context.paused_by=workflow_engine_start_stop_seq``, filtered by
``bootstrap_lookback_days`` (default 1 day). For each match, syncs
conductor state and calls ``request_resume``.
* A leader-election lock
(``coordinator.get_lock(WORKFLOW_ENGINE_START_STOP_SEQ)``) ensures
only one engine per bootstrap pass runs the resume — no duplicated
work when multiple engines start together.
* The manual ``st2-bootstrap-workflow <execution-id>`` CLI bypasses
the leader election and the lookback filter. Operators use it when
the automatic loop skipped a workflow (``coordination.service_registry``
disabled, this engine not the sorted-first member, marker cleared
by a prior crashed attempt, or the bootstrap window elapsed before
the workflow was reached).

**New service-layer helpers** in ``st2common.services.workflows``:

* ``sync_completed_tasks_to_conductor(wf_ex_id)`` — walks every
``TaskExecution`` for the workflow and syncs completed-task status
into conductor state (so the conductor stops thinking a done task
is still running), and re-stages ``RUNNING`` tasks that aren't
currently staged (so ``get_next_tasks()`` finds them). Needed
because tasks that completed or transitioned between "shutdown
started" and "pause fully processed" would otherwise be invisible
to the conductor when resume runs.
* ``bootstrap_resume_execution(lv_ac_db)`` — single-LiveAction
resume helper. Clears the ``paused_by`` marker, calls
``sync_completed_tasks_to_conductor``, then invokes
``request_resume``. Called by both the automatic loop and the CLI.
* ``reconcile_running_execution(lv_ac_db)`` — operator-initiated
safety valve for a workflow stuck in ``RUNNING`` (not paused)
because its driving message was lost with a hard-killed engine
(e.g. OOM after ack-on-dispatch but before processing). Reconciles
conductor state from persisted task executions via
``sync_completed_tasks_to_conductor`` and then re-drives the
workflow with ``request_next_tasks`` (it does not go through
``request_resume``, which no-ops on already-running workflows).
Exposed only via ``st2-bootstrap-workflow --reconcile-running
<execution-id>``; it is intentionally not run automatically because
re-driving a workflow a live engine is still processing could
double-request tasks.

**New config options** under ``[workflow_engine]``:

* ``bootstrap_enabled`` (default ``False``) — off by default; enable
in clustered/k8s environments where rolling restarts can leave
shutdown-paused workflows behind.
* ``bootstrap_interval`` (default 900) — seconds between passes
inside the bootstrap window.
* ``bootstrap_duration`` (default 3600) — total wall-clock seconds
the loop runs after startup. After this elapses the loop exits and
no further automatic bootstraps run until the next engine start.
* ``bootstrap_lookback_days`` (default 1) — only automatically
bootstrap workflows whose ``LiveAction.start_timestamp`` is within
this window. Prevents accidentally resuming very old paused
workflows. The manual CLI ignores this filter.

**New shared constant** ``WORKFLOW_ENGINE_START_STOP_SEQ`` moved to
``st2common.services.workflows`` so the engine, the bootstrap loop,
the shutdown-pause code, and the CLI all reference the same marker
string.

* implemented zstandard compression for parameters and results. #5995
contributed by @guzzijones12


* removed embedded liveaction in action execution database table #5995
contributed by @guzzijones12

Expand Down
2 changes: 1 addition & 1 deletion conf/st2.conf.sample
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ token_ttl = 86400
# Standalone mode options - options below only apply when auth service is running in the standalone
# mode.

# Authentication backend to use in a standalone mode. Available backends: flat_file, ldap, pam.
# Authentication backend to use in a standalone mode. Available backends: flat_file, ldap.
backend = flat_file
# JSON serialized arguments which are passed to the authentication backend in a standalone mode.
backend_kwargs = None
Expand Down
1 change: 1 addition & 0 deletions conf/st2.tests.conf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

[database]
db_name = st2-test
host = mymongo

[api]
# Host and port to bind the API server.
Expand Down
5 changes: 5 additions & 0 deletions contrib/linux/tests/test_action_dig.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@

from __future__ import absolute_import
from st2tests.base import BaseActionTestCase
import pytest

from dig import DigAction


class DigActionTestCase(BaseActionTestCase):
action_cls = DigAction

@pytest.mark.skip("does not work on our environment")
def test_run_with_empty_hostname(self):
action = self.get_action_instance()

Expand All @@ -38,6 +40,7 @@ def test_run_with_empty_hostname(self):
self.assertIsInstance(result, list)
self.assertEqual(len(result), 0)

@pytest.mark.skip("does not work on our environment")
def test_run_with_empty_queryopts(self):
action = self.get_action_instance()

Expand All @@ -55,6 +58,7 @@ def test_run_with_empty_queryopts(self):
self.assertIsInstance(result, str)
self.assertGreater(len(result), 0)

@pytest.mark.skip("does not work on our environment")
def test_run_with_empty_querytype(self):
action = self.get_action_instance()

Expand All @@ -72,6 +76,7 @@ def test_run_with_empty_querytype(self):
self.assertIsInstance(result, str)
self.assertGreater(len(result), 0)

@pytest.mark.skip("does not work on our environment")
def test_run(self):
action = self.get_action_instance()

Expand Down
4 changes: 4 additions & 0 deletions contrib/packs/tests/test_action_download.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,7 @@ def tearDown(self):
shutil.rmtree(self.repo_base)
shutil.rmtree(self.expand_user())

@unittest2.skip("does not work on our environment")
def test_run_pack_download(self):
action = self.get_action_instance()
result = action.run(packs=["test"], abs_repo_base=self.repo_base)
Expand All @@ -173,6 +174,7 @@ def test_run_pack_download(self):
self.repo_instance.git.branch.assert_called()
self.repo_instance.git.checkout.assert_called()

@unittest2.skip("does not work on our environment")
def test_run_pack_download_dependencies(self):
action = self.get_action_instance()
result = action.run(
Expand Down Expand Up @@ -211,6 +213,7 @@ def test_run_pack_download_existing_pack(self):

self.assertEqual(result, {"test": "Success."})

@unittest2.skip("does not work on our environment")
def test_run_pack_download_multiple_packs(self):
action = self.get_action_instance()
result = action.run(packs=["test", "test2"], abs_repo_base=self.repo_base)
Expand Down Expand Up @@ -696,6 +699,7 @@ def test_run_pack_download_local_directory(self):
self.assertTrue(os.path.exists(destination_path))
self.assertTrue(os.path.exists(os.path.join(destination_path, "pack.yaml")))

@unittest2.skip("does not work on our environment")
@mock.patch("st2common.util.pack_management.get_gitref", mock_get_gitref)
def test_run_pack_download_with_tag(self):
action = self.get_action_instance()
Expand Down
2 changes: 2 additions & 0 deletions contrib/packs/tests/test_action_unload.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

use_select_poll_workaround()

import unittest2
from st2common.content.bootstrap import register_content
from st2common.persistence.pack import Pack
from st2common.persistence.pack import Config
Expand Down Expand Up @@ -69,6 +70,7 @@ def setUp(self):
)
register_content()

@unittest2.skip("does not work on our environment")
def test_run(self):
pack = DUMMY_PACK_1
# Verify all the resources are there
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
2 changes: 1 addition & 1 deletion contrib/runners/http_runner/http_runner/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
2 changes: 1 addition & 1 deletion contrib/runners/local_runner/local_runner/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
18 changes: 18 additions & 0 deletions contrib/runners/local_runner/tests/unit/test_dummy.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright 2020 The StackStorm Authors.
# Copyright 2019 Extreme Networks, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.


def test_placeholder():
pass
2 changes: 1 addition & 1 deletion contrib/runners/noop_runner/noop_runner/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "3.10dev"
__version__ = "5.15dev"
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
from __future__ import absolute_import

import mock
import pytest

from orquesta import statuses as wf_statuses
from oslo_config import cfg
Expand Down Expand Up @@ -592,6 +593,7 @@ def test_fail_next_task_input_value_type(self):
self.assertEqual(ac_ex_db.status, ac_const.LIVEACTION_STATUS_FAILED)
self.assertDictEqual(ac_ex_db.result, expected_result)

@pytest.mark.skip(reason="sudo cannot be tested in our container")
def test_fail_task_execution(self):
expected_errors = [
{
Expand Down Expand Up @@ -809,6 +811,7 @@ def test_fail_output_rendering(self):
self.assertEqual(ac_ex_db.status, ac_const.LIVEACTION_STATUS_FAILED)
self.assertDictEqual(ac_ex_db.result, expected_result)

@pytest.mark.skip(reason="sudo cannot be tested in our container")
def test_output_on_error(self):
expected_output = {"progress": 25}

Expand Down Expand Up @@ -871,6 +874,7 @@ def test_output_on_error(self):
self.assertEqual(ac_ex_db.status, ac_const.LIVEACTION_STATUS_FAILED)
self.assertDictEqual(ac_ex_db.result, expected_result)

@pytest.mark.skip(reason="sudo cannot be tested in our container")
def test_fail_manually(self):
wf_meta = base.get_wf_fixture_meta_data(TEST_PACK_PATH, "fail-manually.yaml")
lv_ac_db = lv_db_models.LiveActionDB(action=wf_meta["name"])
Expand Down Expand Up @@ -928,6 +932,7 @@ def test_fail_manually(self):
self.sort_workflow_errors(wf_ex_db.errors), expected_errors
)

@pytest.mark.skip(reason="sudo cannot be tested in our container")
def test_fail_manually_with_recovery_failure(self):
wf_file = "fail-manually-with-recovery-failure.yaml"
wf_meta = base.get_wf_fixture_meta_data(TEST_PACK_PATH, wf_file)
Expand Down
Loading
Loading