Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
339 commits
Select commit Hold shift + click to select a range
6938bf2
Merge pull request #39 from qld-gov-au/dependabot/pip/coveralls-2.1.1
ThrawnCA Jul 24, 2020
4d28ff5
add dependencies on QA extensions now required by ckanext-data-qld
ThrawnCA Jul 27, 2020
c7cff15
initialise QA tables
ThrawnCA Jul 27, 2020
279d64d
initialise archival and reporting tables
ThrawnCA Jul 27, 2020
8fcb3fd
Merge pull request #40 from qld-gov-au/dependabot/pip/lxml-4.5.2
ThrawnCA Jul 27, 2020
8241bcf
Merge pull request #41 from qld-gov-au/develop
ThrawnCA Jul 27, 2020
b79005c
[Security] Bump requests from 2.11.1 to 2.24.0
dependabot-preview[bot] Jul 27, 2020
5b0f5f0
Bump python-magic from 0.4.12 to 0.4.18
dependabot-preview[bot] Jul 27, 2020
2463008
Bump coveralls from 2.1.1 to 2.1.2
dependabot-preview[bot] Aug 12, 2020
93a6677
Merge pull request #47 from qld-gov-au/dependabot/pip/coveralls-2.1.2
ThrawnCA Sep 23, 2020
93a6add
Merge pull request #45 from qld-gov-au/dependabot/pip/requests-2.24.0
ThrawnCA Sep 23, 2020
df51f99
Merge pull request #46 from qld-gov-au/dependabot/pip/python-magic-0.…
ThrawnCA Sep 23, 2020
5745890
Bump progressbar from 2.3 to 2.5
dependabot-preview[bot] Sep 23, 2020
a8e25ba
Merge pull request #42 from qld-gov-au/dependabot/pip/progressbar-2.5
ThrawnCA Sep 23, 2020
f9dbc3c
Bump six from 1.11.0 to 1.15.0
dependabot-preview[bot] Sep 23, 2020
ebe4843
Bump xlrd from 1.0.0 to 1.2.0
dependabot-preview[bot] Sep 23, 2020
69c8211
Merge pull request #44 from qld-gov-au/dependabot/pip/six-1.15.0
ThrawnCA Sep 23, 2020
1996f00
Merge pull request #43 from qld-gov-au/dependabot/pip/xlrd-1.2.0
ThrawnCA Sep 23, 2020
fed4399
Bump lxml from 4.5.2 to 4.6.3
dependabot[bot] Apr 6, 2021
8246be1
Upgrade to GitHub-native Dependabot
dependabot-preview[bot] Apr 29, 2021
af078d4
update 'requests' to handle a wider range of dependencies
ThrawnCA Apr 30, 2021
fb4451b
replace obsolete data_qld combined plugin
ThrawnCA Apr 30, 2021
0075487
add data_qld_integration plugin
ThrawnCA Apr 30, 2021
f875d6c
Merge pull request #50 from qld-gov-au/dependabot/add-v2-config-file
ThrawnCA Apr 30, 2021
71ab931
Merge branch 'develop' of https://github.com/qld-gov-au/ckanext-datar…
ThrawnCA Apr 30, 2021
f6f9808
[QOL-7970] clean up for Flake8 and Python 3
ThrawnCA Apr 30, 2021
cc26433
Merge pull request #49 from qld-gov-au/dependabot/pip/lxml-4.6.3
ThrawnCA Apr 30, 2021
dc4a3cd
Merge branch 'develop' of https://github.com/qld-gov-au/ckanext-datar…
ThrawnCA Apr 30, 2021
6c289e2
[QOL-7970] oops fix six module name
ThrawnCA Apr 30, 2021
92f2f81
[QOL-7970] update tests to replace 'paster' with 'ckan' as needed
ThrawnCA Apr 30, 2021
92430ea
[QOL-7970] oops make ckan_cli executable
ThrawnCA Apr 30, 2021
b4da33f
[QOL-7970] oops fix CKAN_INI variable name
ThrawnCA May 6, 2021
f8ff57a
Merge branch 'develop' of https://github.com/qld-gov-au/ckanext-datar…
ThrawnCA May 6, 2021
dbaa9b0
refactor - don't directly call parameterized tests
ThrawnCA May 6, 2021
3a5c527
oops rename extracted helper methods so they don't get run directly a…
ThrawnCA May 6, 2021
4b271fd
Merge pull request #6 from qld-gov-au/dependabot/pip/nose-parameteriz…
ThrawnCA May 6, 2021
074be8c
Merge branch 'develop' into QOL-7970-CKAN-2.9
ThrawnCA May 6, 2021
815becf
[QOL-7970] replace obsolete 'nose-parameterized'
ThrawnCA May 6, 2021
1bbd844
[QOL-7970] fix indentation
ThrawnCA May 6, 2021
c13f473
Merge pull request #51 from qld-gov-au/QOL-7970-CKAN-2.9
ThrawnCA May 6, 2021
9d6666e
Merge pull request #52 from qld-gov-au/develop
ThrawnCA May 6, 2021
e447fc6
merge upstream changes
ThrawnCA May 7, 2021
d0784f8
Merge pull request #54 from qld-gov-au/upstream-develop
ThrawnCA May 10, 2021
6fb9e50
Merge pull request #55 from qld-gov-au/develop
ThrawnCA May 11, 2021
7943f62
[QOL-7970] add route names so we can use url_for consistently with Py…
ThrawnCA May 14, 2021
6777d6a
Merge pull request #57 from qld-gov-au/QOL-7970-use-named-routes
ThrawnCA May 14, 2021
96bc749
[QOL-8053] synchronise CI config with Open Data theme and add Github …
ThrawnCA Jun 9, 2021
60eb94c
[QOL-8053] make ckan_cli script executable
ThrawnCA Jun 9, 2021
8c3173d
[QOL-8053] sync CI config with other repos
ThrawnCA Jun 16, 2021
2827a13
[QOL-8053] oops fix Dockerfile syntax
ThrawnCA Jun 16, 2021
edcf960
[QOL-8053] restart test containers after resetting DB
ThrawnCA Jun 16, 2021
cb061a4
[QOL-8053] remove DB reset between tests
ThrawnCA Jun 16, 2021
f730736
[QOL-8053] move user creation to 'test data' script and run it before…
ThrawnCA Jun 16, 2021
5c101be
[QOL-8053] adjust user creation
ThrawnCA Jun 16, 2021
5b9935b
[QOL-8053] add debugging message for user creation
ThrawnCA Jun 16, 2021
392c7f8
[QOL-8053] oops fix user creation argument order
ThrawnCA Jun 16, 2021
1cbfa60
[QOL-8053] oops fix unwanted underscore
ThrawnCA Jun 16, 2021
0d59338
[QOL-8053] revert double creation of test data and debug email sending
ThrawnCA Jun 22, 2021
af3874d
[QOL-8053] debug config location in ckan_cli script
ThrawnCA Jun 22, 2021
16265e4
[QOL-8053] avoid double quotes in potential screenshot names
ThrawnCA Jun 22, 2021
f24d77d
[QOL-8053] fix logging reference to use specific log instead of module
ThrawnCA Jun 22, 2021
e04af7f
[QOL-8053] debug mailmock
ThrawnCA Jun 23, 2021
1cdea0d
[QOL-8053] fix artefact paths
ThrawnCA Jun 23, 2021
9cd7229
[QOL-8053] fix CKAN username
ThrawnCA Jun 23, 2021
4c7139a
[QOL-8053] capture default email directory for artefact upload
ThrawnCA Jun 23, 2021
190e64a
[QOL-8053] revert 'docker cp' syntax
ThrawnCA Jun 23, 2021
5c94651
[QOL-8053] use full path within container for 'docker cp'
ThrawnCA Jun 23, 2021
aff9a31
[QOL-8053] fix mail path
ThrawnCA Jun 23, 2021
ec5f1fc
[QOL-8053] debug BDD test directory
ThrawnCA Jun 23, 2021
1e6cafc
[QOL-8053] debug BDD test directory
ThrawnCA Jun 23, 2021
07f6558
[QOL-8053] update Redis container for tests
ThrawnCA Jun 23, 2021
cd1a7cc
[QOL-8053] use Alpine-based Redis container
ThrawnCA Jun 23, 2021
7f70c2f
[QOL-8053] update Redis database to match core settings
ThrawnCA Jun 23, 2021
fbf3812
[QOL-8053] use local Redis instead of container
ThrawnCA Jun 23, 2021
e84834b
[QOL-8053] ensure local Redis is started
ThrawnCA Jun 23, 2021
1913e4c
[QOL-8053] start test Redis in serve script instead of Dockerfile
ThrawnCA Jun 23, 2021
a52dab8
[QOL-8053] locate emails on disk if any
ThrawnCA Jun 23, 2021
f71f2bc
[QOL-8053] don't try to match email subjects
ThrawnCA Jun 23, 2021
60d04de
[QOL-8053] don't try to match email subjects since they have encoding…
ThrawnCA Jun 23, 2021
8d1f997
[QOL-8053] revert mailmock/Redis debugging changes
ThrawnCA Jun 23, 2021
8352a70
Merge pull request #59 from qld-gov-au/QOL-8053-github-actions
ThrawnCA Jun 23, 2021
badb345
Merge pull request #58 from qld-gov-au/develop
ThrawnCA Jun 23, 2021
657db1e
[QOL-8053] refactor
ThrawnCA Jun 24, 2021
44c0fff
[QOL-7970] oops fix config location
ThrawnCA Jun 24, 2021
09e267c
Merge branch 'develop' of https://github.com/qld-gov-au/ckanext-datar…
ThrawnCA Jun 25, 2021
ff6d07c
Merge pull request #60 from qld-gov-au/QOL-8053-github-actions
ThrawnCA Jun 25, 2021
f49152f
Merge pull request #61 from qld-gov-au/develop
ThrawnCA Jun 25, 2021
436d89d
[QOL-8251] update CKAN Docker image
ThrawnCA Sep 2, 2021
5a72f53
[QOL-8251] add debugging of failed container builds
ThrawnCA Sep 2, 2021
808c51d
[QOL-8251] drop user ID override on database containers, use default
ThrawnCA Sep 2, 2021
0867a32
[QOL-8251] use better test passwords and extract to default value
ThrawnCA Sep 2, 2021
1365a9f
[QOL-8251] fix data request test passwords
ThrawnCA Sep 2, 2021
48d41c1
Merge pull request #62 from qld-gov-au/QOL-8251-check-tests
ThrawnCA Sep 2, 2021
d5095fb
[QOL-7970] split plugin for Pylons and Flask
ThrawnCA Nov 9, 2021
020b7bc
[QOL-7970] fix template and asset directories
ThrawnCA Nov 9, 2021
d777cfd
[QOL-7970] adjust tests to use module not class
ThrawnCA Nov 9, 2021
058ef03
[QOL-7970] replace f-strings with Python 2 compatible syntax
ThrawnCA Nov 9, 2021
00db156
[QOL-7970] adjust tests to use correct Pylons controller
ThrawnCA Nov 9, 2021
7c1635a
[QOL-7970] restore controller path
ThrawnCA Nov 9, 2021
326535c
[QOL-7970] use screenshot-compatible scenario name
ThrawnCA Nov 9, 2021
9a95600
[QOL-7970] oops fix import
ThrawnCA Nov 9, 2021
d11ad16
[QOL-7970] ensure smoke tests pass before running others
ThrawnCA Nov 9, 2021
8fdd90f
[QOL-7970] oops fix controller function references
ThrawnCA Nov 9, 2021
402512d
[QOL-7970] fix fanstatic path
ThrawnCA Nov 9, 2021
f4252da
[QOL-7970] add test for CKAN 2.7
ThrawnCA Nov 10, 2021
25d0d8a
[QOL-7970] oops pass CKAN_VERSION through Docker Compose
ThrawnCA Nov 10, 2021
d8838e5
[QOL-7970] drop QGOV theme
ThrawnCA Nov 10, 2021
82010dc
[QOL-7970] fix tests
ThrawnCA Nov 10, 2021
19d0146
[QOL-7970] fix tests
ThrawnCA Nov 10, 2021
220c001
[QOL-7970] drop QGOV-specific tests
ThrawnCA Nov 10, 2021
3c8a945
[QOL-7970] retrieve add link case-insensitively
ThrawnCA Nov 10, 2021
46a31fd
[QOL-7970] use matching case instead of trying insensitivity
ThrawnCA Nov 10, 2021
8478adf
[QOL-7970] fix 'Create Data Request' case
ThrawnCA Nov 10, 2021
632b5cb
[QOL-7970] make login link path more robust
ThrawnCA Nov 10, 2021
eace36a
[QOL-7970] drop CKAN 2.7 testing
ThrawnCA Nov 10, 2021
ac2154d
[QOL-7970] retrieve org users to notify of new data request
ThrawnCA Nov 10, 2021
bd2e089
[QOL-7970] drop QGOV-specific features from tests
ThrawnCA Nov 10, 2021
0d1134e
[QOL-7970] drop QGOV-specific features from tests
ThrawnCA Nov 10, 2021
1aed1dc
[QOL-7970] fix assertions for request status
ThrawnCA Nov 10, 2021
1b8d170
[QOL-7970] drop incorrect assertion
ThrawnCA Nov 10, 2021
cabd347
[QOL-7970] add testing for data request comments
ThrawnCA Nov 10, 2021
1ec26b7
[QOL-7970] oops add missing behave step
ThrawnCA Nov 10, 2021
13b44cd
[QOL-7970] enable comments tab in tests
ThrawnCA Nov 10, 2021
30f5c49
[QOL-7970] reduce comment tab assertions
ThrawnCA Nov 10, 2021
24ed3d3
[QOL-7970] remove QGOV-specific test
ThrawnCA Nov 10, 2021
ddd53b7
[QOL-7970] fix deletion test
ThrawnCA Nov 10, 2021
d669064
[QOL-7970] fix import path
ThrawnCA Nov 10, 2021
2f507d2
[QOL-7970] make comment subject optional
ThrawnCA Nov 10, 2021
0a13a9b
[QOL-7970] fix XPath for comment delete link
ThrawnCA Nov 10, 2021
bf7fe13
[QOL-7970] fix document selectors for vanilla theme
ThrawnCA Nov 10, 2021
8c54453
[QOL-7970] oops use CSS syntax not XPath
ThrawnCA Nov 11, 2021
cd64081
[QOL-7970] drop tag name from CSS selector
ThrawnCA Nov 11, 2021
29d71e1
[QOL-7970] fix tests
ThrawnCA Nov 11, 2021
b232f2f
[QOL-7970] put test data request in test org
ThrawnCA Nov 11, 2021
429f99f
[QOL-7970] enable test comment notifications
ThrawnCA Nov 11, 2021
94b27d6
[QOL-7970] use test word from default profanity list
ThrawnCA Nov 11, 2021
65cad7d
[QOL-7970] drop unnecessary override of default org
ThrawnCA Nov 11, 2021
0021918
[QOL-7970] fix email body bug
ThrawnCA Nov 11, 2021
502c6bc
[QOL-7970] drop tests depending on ckanext-ytp-comments
ThrawnCA Nov 11, 2021
b3cdbce
[QOL-7970] drop unnecessary extensions from tests
ThrawnCA Nov 11, 2021
6bc3156
[QOL-7970] provide default values for Docker args
ThrawnCA Nov 11, 2021
63ea317
[QOL-7970] provide CKAN_VERSION for CircleCI build
ThrawnCA Nov 11, 2021
26d92dc
Merge pull request #63 from qld-gov-au/QOL-7970-CKAN-2.9-merge-upstream
ThrawnCA Nov 11, 2021
d067ade
[QOL-7970] cleanup
ThrawnCA Nov 11, 2021
e9c19b2
[QOL-7970] use pytest instead of nose
ThrawnCA Nov 11, 2021
dd35890
[QOL-7970] add CKAN 2.9 test run
ThrawnCA Nov 11, 2021
d86f2fd
[QOL-7970] drop Nose config
ThrawnCA Nov 11, 2021
dae5d3b
[QOL-7970] split off unit testing for Pylons plugin
ThrawnCA Nov 11, 2021
df686bb
[QOL-7970] patch common config for tests
ThrawnCA Nov 11, 2021
a4ef3b6
[QOL-7970] test mix-in plugin directly
ThrawnCA Nov 12, 2021
2c46c29
[QOL-7970] set flag on mix-in plugin directly
ThrawnCA Nov 12, 2021
631eea2
[QOL-7970] use boolean parameters instead of text
ThrawnCA Nov 12, 2021
44bbe91
[QOL-7970] oops make parameter a tuple
ThrawnCA Nov 12, 2021
d1327b2
[QOL-7970] oops adjust type expectations for comments_enabled
ThrawnCA Nov 12, 2021
d7e8ef3
[QOL-7970] oops fix module path
ThrawnCA Nov 12, 2021
742f1db
[QOL-7970] use named routes
ThrawnCA Nov 12, 2021
0968e40
[QOL-7970] increase Flask compatibility
ThrawnCA Nov 12, 2021
8ae242a
[QOL-7970] adjust tests to handle extra named routes
ThrawnCA Nov 12, 2021
16dd593
[QOL-7970] mock out request object in tests
ThrawnCA Nov 12, 2021
308163d
[QOL-7970] use request helpers for POST and testing
ThrawnCA Nov 12, 2021
49748b6
[QOL-7970] mock POST body correctly
ThrawnCA Nov 12, 2021
52caa4c
[QOL-7970] mock out request helper module
ThrawnCA Nov 12, 2021
b763a0e
[QOL-7970] fix request helper patching
ThrawnCA Nov 12, 2021
f1fe395
[QOL-7970] make patch functions fluent
ThrawnCA Nov 12, 2021
57b59d8
[QOL-7970] fix fallback handling on request helpers
ThrawnCA Nov 12, 2021
8e0b950
[QOL-7970] add methods to Flask routing
ThrawnCA Nov 12, 2021
436f3dc
[QOL-7970] fix url_for args
ThrawnCA Nov 12, 2021
de132cc
[QOL-7970] oops url_for tag doesn't name its parameter either
ThrawnCA Nov 12, 2021
0955b41
[QOL-7970] fix data request routing
ThrawnCA Nov 15, 2021
9658662
[QOL-7970] fix None case
ThrawnCA Nov 15, 2021
386384c
[QOL-7970] quote test field name
ThrawnCA Nov 15, 2021
4f310f2
[QOL-7970] oops revert quoting as it's a fixed step name
ThrawnCA Nov 15, 2021
99d4719
[QOL-7970] oops revert none test
ThrawnCA Nov 15, 2021
e807595
[QOL-7970] add mock SMTP server to silence errors
ThrawnCA Nov 15, 2021
32aa135
[QOL-7970] drop mock SMTP server as it clashes with mailmock
ThrawnCA Nov 15, 2021
32cc4bc
[QOL-7970] use parentheses to fix expression order
ThrawnCA Nov 15, 2021
028d03f
[QOL-7970] verify comment attribute before showing
ThrawnCA Nov 15, 2021
768a705
[QOL-7970] adjust comment handling
ThrawnCA Nov 15, 2021
f004713
[QOL-7970] oops use dict syntax not attribute
ThrawnCA Nov 15, 2021
c046e01
[QOL-7970] debug view rendering
ThrawnCA Nov 15, 2021
d8009ca
[QOL-7970] return redirects as views
ThrawnCA Nov 15, 2021
ce4a15b
[QOL-7970] fix assertions on redirect values
ThrawnCA Nov 15, 2021
8ef2d9c
[QOL-7970] fix Flask redirect on create
ThrawnCA Nov 16, 2021
2468884
[QOL-7970] handle test with/out validation error
ThrawnCA Nov 16, 2021
9dfe86a
[QOL-7970] use standard 'behaving' step for dropdown
ThrawnCA Nov 16, 2021
af28222
[QOL-7970] add debugging for closure datasets
ThrawnCA Nov 16, 2021
53bac92
[QOL-7970] add debugging for data request creation
ThrawnCA Nov 17, 2021
c098e4a
[QOL-7970] enable debugging for test dataset setup
ThrawnCA Nov 17, 2021
6c3c48d
[QOL-7970] shorten scenario names for screenshotting
ThrawnCA Nov 17, 2021
23da8dc
[QOL-7970] select dataset by text
ThrawnCA Nov 17, 2021
00ab218
[QOL-7970] wait a second for jQuery to run
ThrawnCA Nov 17, 2021
236dde4
[QOL-7970] revert drop-down interaction
ThrawnCA Nov 25, 2021
697e58b
[QOL-7970] add admin user in 'init'
ThrawnCA Nov 25, 2021
dea6520
[QOL-7970] use jQuery to select closure dataset
ThrawnCA Nov 29, 2021
ddf033f
[QOL-7970] debug CKAN 2.9 failures
ThrawnCA Nov 29, 2021
34273bd
[QOL-7970] expand debugging
ThrawnCA Nov 29, 2021
3a1fea2
[QOL-7970] expand debugging
ThrawnCA Nov 29, 2021
e1446d2
[QOL-7970] pass datasets directly to rendering rather than using 'c'
ThrawnCA Nov 29, 2021
117a6b5
[QOL-7970] fix 'c' debugging
ThrawnCA Nov 29, 2021
f19053a
[QOL-7970] drop debugging of global object
ThrawnCA Nov 29, 2021
485ac69
[QOL-7970] add debugging of dataset load
ThrawnCA Nov 29, 2021
19182f6
[QOL-7970] oops fix variable case
ThrawnCA Nov 29, 2021
8060aad
[QOL-7970] ensure Solr knows about test data
ThrawnCA Nov 29, 2021
4a25d63
[QOL-7970] debug organization_show call
ThrawnCA Nov 29, 2021
d162fc4
[QOL-7970] use package_search call even for org
ThrawnCA Nov 29, 2021
b691405
[QOL-7970] fix unit tests to expect package_search
ThrawnCA Nov 29, 2021
cb647c8
[QOL-7970] oops fix package query syntax
ThrawnCA Nov 29, 2021
2a3db13
[QOL-7970] update test data command to handle CKAN 2.9 CLI
ThrawnCA Nov 29, 2021
8540f65
[QOL-7970] ensure test DB schema is up to date
ThrawnCA Nov 29, 2021
5be0c7f
[QOL-7970] clean up
ThrawnCA Nov 30, 2021
aa9b3cd
Merge pull request #64 from qld-gov-au/QOL-7970-CKAN-2.9-merge-upstream
ThrawnCA Nov 30, 2021
818a5b9
[QOL-7970] fix menu items for organisations
ThrawnCA Nov 30, 2021
9fb463a
[QOL-7970] revert to 'c' global object for passing datasets
ThrawnCA Nov 30, 2021
eb1da70
[QOL-7970] restore assertion of closure datasets
ThrawnCA Nov 30, 2021
e8ca822
Merge pull request #65 from qld-gov-au/QOL-7970-CKAN-2.9-merge-upstream
ThrawnCA Nov 30, 2021
120d49f
Merge pull request #66 from qld-gov-au/develop
ThrawnCA Dec 1, 2021
7bf0637
[QOL-8952] set row limit on package_search even without org
ThrawnCA Jun 17, 2022
bc7d8ee
[QOL-8952] clean up test config
ThrawnCA Jun 17, 2022
30bf257
[QOL-8952] fix test expectation to include 'rows' parameter
ThrawnCA Jun 19, 2022
37e8862
[QOL-8952] drop CKAN version from default parameters
ThrawnCA Jun 19, 2022
6ca484f
Merge pull request #67 from qld-gov-au/QOL-8952-data-request-closing
ThrawnCA Jun 20, 2022
bbb3c08
Merge pull request #68 from qld-gov-au/develop
ThrawnCA Jun 30, 2022
9437721
[QOL-9055] clean up imports
ThrawnCA Jul 8, 2022
72f2fec
[QOL-9055] explicitly mark relative db import
ThrawnCA Jul 8, 2022
6552e23
[QOL-9055] revert interactions with toolkit API to fix test mocks
ThrawnCA Jul 8, 2022
d564299
[QOL-9055] mark test module to enable relative imports
ThrawnCA Jul 8, 2022
ffd1cfa
[QOL-9055] oops restore 'tk' reference to render call
ThrawnCA Jul 8, 2022
902dff5
[QOL-9055] revert toolkit access to fix tests
ThrawnCA Jul 8, 2022
c8771a3
[QOL-9055] drop obsolete test mocks
ThrawnCA Jul 8, 2022
3a59b1f
[QOL-9055] drop obsolete test mock
ThrawnCA Jul 8, 2022
345ad33
[QOL-9055] update mockery of helpers
ThrawnCA Jul 8, 2022
0cd5506
[QOL-9055] adjust test mocks
ThrawnCA Jul 12, 2022
19dc15a
[QOL-9055] adjust test mocks
ThrawnCA Jul 12, 2022
d7184ed
[QOL-9055] use 'c' import instead of double-handling
ThrawnCA Jul 12, 2022
24b2f55
[QOL-9055] clean up scenario tests
ThrawnCA Jul 12, 2022
ae1894d
[QOL-9055] fix controller tests to handle a response on abort
ThrawnCA Jul 12, 2022
27883c4
[QOL-9055] use 'return_value' not 'side_effect' for regular return
ThrawnCA Jul 12, 2022
f93e58e
[QOL-9055] add test mock for the 'h' import
ThrawnCA Jul 12, 2022
dd5d9b6
[QOL-9055] swap test assertions for clearer debugging
ThrawnCA Jul 13, 2022
e23e3d1
[QOL-9055] fix test assertions after calling 'abort'
ThrawnCA Jul 13, 2022
4fbf611
[QOL-9055] fix test spelling of 'comment'
ThrawnCA Jul 13, 2022
ea66906
[QOL-9055] fix test to not expect 'abort' on validation error
ThrawnCA Jul 13, 2022
e1c1e5b
[QOL-9055] provide CKAN version for CircleCI build
ThrawnCA Jul 13, 2022
f5ce23a
Merge pull request #69 from qld-gov-au/QOL-9055-amazon-linux-2
ThrawnCA Jul 13, 2022
429909e
[QOL-9055] fix handling of POST results
ThrawnCA Jul 13, 2022
b57a1a5
[QOL-9055] fix tests for POST results
ThrawnCA Jul 13, 2022
2ee1003
Merge pull request #71 from qld-gov-au/QOL-9055-amazon-linux-2
ThrawnCA Jul 13, 2022
f2c4585
Merge pull request #70 from qld-gov-au/develop
ThrawnCA Jul 13, 2022
ea6ba6d
restore conwetlab README
ThrawnCA Jul 13, 2022
e4a867a
replace obsolete integratedexperts container
ThrawnCA Mar 19, 2023
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
190 changes: 190 additions & 0 deletions .ahoy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,190 @@
---
ahoyapi: v2

commands:

# Docker commands.
build:
usage: Build or rebuild project.
cmd: |
ahoy title "Building project"
ahoy pre-flight
ahoy clean
ahoy build-network
ahoy up -- --build --force-recreate
ahoy install-site
ahoy title "Build complete"
ahoy doctor
ahoy info 1

build-network:
usage: Ensure that the amazeeio network exists.
cmd: |
docker network prune -f > /dev/null
docker network inspect amazeeio-network > /dev/null || docker network create amazeeio-network

info:
usage: Print information about this project.
cmd: |
ahoy line "Project : " ${PROJECT}
ahoy line "Site local URL : " ${LAGOON_LOCALDEV_URL}
ahoy line "DB port on host : " $(docker port $(docker-compose ps -q postgres) 5432 | cut -d : -f 2)
ahoy line "Solr port on host : " $(docker port $(docker-compose ps -q solr) 8983 | cut -d : -f 2)
ahoy line "Mailhog URL : " http://mailhog.docker.amazee.io/

up:
usage: Build and start Docker containers.
cmd: |
docker-compose up -d "$@"
sleep 10
docker-compose logs
ahoy cli "dockerize -wait tcp://ckan:3000 -timeout 1m"
if docker-compose logs | grep -q "\[Error\]"; then docker-compose logs; exit 1; fi
if docker-compose logs | grep -q "Exception"; then docker-compose logs; exit 1; fi
docker ps -a --filter name=^/${COMPOSE_PROJECT_NAME}_
export DOCTOR_CHECK_CLI=0

down:
usage: Stop Docker containers and remove container, images, volumes and networks.
cmd: 'if [ -f "docker-compose.yml" ]; then docker-compose down --volumes; fi'

start:
usage: Start existing Docker containers.
cmd: docker-compose start "$@"

stop:
usage: Stop running Docker containers.
cmd: docker-compose stop "$@"

restart:
usage: Restart all stopped and running Docker containers.
cmd: docker-compose restart "$@"

logs:
usage: Show Docker logs.
cmd: docker-compose logs "$@"

pull:
usage: Pull latest docker images.
cmd: if [ ! -z "$(docker image ls -q)" ]; then docker image ls --format \"{{.Repository}}:{{.Tag}}\" | grep amazeeio/ | grep -v none | xargs -n1 docker pull | cat; fi

cli:
usage: Start a shell inside CLI container or run a command.
cmd: if \[ "${#}" -ne 0 \]; then docker exec $(docker-compose ps -q ckan) sh -c '. ${VENV_DIR}/bin/activate; cd $APP_DIR;'" $*"; else docker exec $(docker-compose ps -q ckan) sh -c '. ${VENV_DIR}/bin/activate && cd $APP_DIR && sh'; fi

doctor:
usage: Find problems with current project setup.
cmd: .docker/scripts/doctor.sh "$@"

install-site:
usage: Install a site.
cmd: |
ahoy title "Installing a fresh site"
ahoy cli "./scripts/init.sh"

clean:
usage: Remove containers and all build files.
cmd: |
ahoy down
# Remove other directories.
# @todo: Add destinations below.
rm -rf \
./ckan

reset:
usage: "Reset environment: remove containers, all build, manually created and Drupal-Dev files."
cmd: |
ahoy clean
git ls-files --others -i --exclude-from=.git/info/exclude | xargs chmod 777
git ls-files --others -i --exclude-from=.git/info/exclude | xargs rm -Rf
find . -type d -not -path "./.git/*" -empty -delete

flush-redis:
usage: Flush Redis cache.
cmd: docker exec -i $(docker-compose ps -q redis) redis-cli flushall > /dev/null

lint:
usage: Lint code.
cmd: |
ahoy cli "flake8 ${@:-ckanext}" || \
[ "${ALLOW_LINT_FAIL:-0}" -eq 1 ]

test-unit:
usage: Run unit tests.
cmd: |
ahoy cli 'pytest --ckan-ini=${CKAN_INI}' || \
[ "${ALLOW_UNIT_FAIL:-0}" -eq 1 ]

test-bdd:
usage: Run BDD tests.
cmd: |
ahoy start-ckan-job-worker &
ahoy start-mailmock &
sleep 5 &&
ahoy cli "behave -k ${*:-test/features}" --tags @smoke && \
ahoy cli "behave -k ${*:-test/features}" || \
[ "${ALLOW_BDD_FAIL:-0}" -eq 1 ]
ahoy stop-mailmock
ahoy stop-ckan-job-worker

start-mailmock:
usage: Starts email mock server used for email BDD tests
cmd: |
ahoy title 'Starting mailmock'
ahoy cli 'mailmock -p 8025 -o ${APP_DIR}/test/emails --no-stdout' # for debugging mailmock email output remove --no-stdout

stop-mailmock:
usage: Stops email mock server used for email BDD tests
cmd: |
ahoy title 'Stopping mailmock'
ahoy cli "killall -2 mailmock"

start-ckan-job-worker:
usage: Starts default CKAN background job worker
cmd: |
ahoy title 'Starting default CKAN background job worker'
ahoy cli "ckan_cli jobs clear && \
ckan_cli jobs worker"

stop-ckan-job-worker:
usage: Stops CKAN background job worker
cmd: |
ahoy title 'Stopping CKAN background job worker'
ahoy cli "pkill -f 'jobs worker'"

# Utilities.
title:
cmd: printf "$(tput -Txterm setaf 4)==> ${1}$(tput -Txterm sgr0)\n"
hide: true

line:
cmd: printf "$(tput -Txterm setaf 2)${1}$(tput -Txterm sgr0)${2}\n"
hide: true

getvar:
cmd: eval echo "${@}"
hide: true

pre-flight:
cmd: |
export DOCTOR_CHECK_DB=${DOCTOR_CHECK_DB:-1}
export DOCTOR_CHECK_TOOLS=${DOCTOR_CHECK_TOOLS:-1}
export DOCTOR_CHECK_PORT=${DOCTOR_CHECK_PORT:-0}
export DOCTOR_CHECK_PYGMY=${DOCTOR_CHECK_PYGMY:-1}
export DOCTOR_CHECK_CLI=${DOCTOR_CHECK_CLI:-0}
export DOCTOR_CHECK_SSH=${DOCTOR_CHECK_SSH:-0}
export DOCTOR_CHECK_WEBSERVER=${DOCTOR_CHECK_WEBSERVER:-0}
export DOCTOR_CHECK_BOOTSTRAP=${DOCTOR_CHECK_BOOTSTRAP:-0}
ahoy doctor
hide: true

entrypoint:
- bash
- "-c"
- "-e"
- |
export LAGOON_LOCALDEV_URL=http://$PROJECT.docker.amazee.io
[ -f .env ] && [ -s .env ] && export $(grep -v '^#' .env | xargs) && if [ -f .env.local ] && [ -s .env.local ]; then export $(grep -v '^#' .env.local | xargs); fi
bash -e -c "$0" "$@"
- "{{cmd}}"
- "{{name}}"
24 changes: 24 additions & 0 deletions .circleci/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/usr/bin/env bash
##
# Build site in CI.
#
set -e

# Process Docker Compose configuration. This is used to avoid multiple
# docker-compose.yml files.
# Remove lines containing '###'.
sed -i -e "/###/d" docker-compose.yml
# Uncomment lines containing '##'.
sed -i -e "s/##//" docker-compose.yml

# Pull the latest images.
ahoy pull

# Disable checks used on host machine.
export DOCTOR_CHECK_PYGMY=0
export DOCTOR_CHECK_PORT=0
export DOCTOR_CHECK_SSH=0
export DOCTOR_CHECK_WEBSERVER=0
export DOCTOR_CHECK_BOOTSTRAP=0

ahoy build || (ahoy logs; exit 1)
43 changes: 43 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
version: 2
aliases:

# Shared configuration applied to each job.
- &container_config
working_directory: /app
docker:
#; Using "runner" container where each job will be executed. This container
#; has all necessary tools to run dockerized environment.
#; @see https://github.com/integratedexperts/ci-builder
- image: integratedexperts/ci-builder

# Step to setup remote docker.
- &step_setup_remote_docker
setup_remote_docker

jobs:
build:
<<: *container_config
parallelism: 1
steps:
- attach_workspace:
at: /workspace
- checkout
- *step_setup_remote_docker
- run:
command: .circleci/build.sh
environment:
CKAN_VERSION: 2.9.5
- run: .circleci/test.sh
- run:
name: Process artifacts
command: .circleci/process-artifacts.sh
when: always
- store_artifacts:
path: /tmp/artifacts
when: always

workflows:
version: 2
main:
jobs:
- build
13 changes: 13 additions & 0 deletions .circleci/process-artifacts.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/usr/bin/env bash
##
# Process test artifacts.
#
set -e

# Create screenshots directory in case it was not created before. This is to
# avoid this script to fail when copying artifacts.
ahoy cli "mkdir -p test/screenshots"

# Copy from the app container to the build host for storage.
mkdir -p /tmp/artifacts/behave
docker cp "$(docker-compose ps -q ckan)":/app/test/screenshots /tmp/artifacts/behave/
14 changes: 14 additions & 0 deletions .circleci/test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/usr/bin/env bash
##
# Run tests in CI.
#
set -e

echo "==> Lint code"
ahoy lint

echo "==> Run Unit tests"
ahoy test-unit

echo "==> Run BDD tests"
ahoy test-bdd || (ahoy logs; exit 1)
47 changes: 47 additions & 0 deletions .docker/Dockerfile.ckan
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
FROM amazeeio/python:2.7-ckan-21.8.0

ARG SITE_URL=http://ckan:3000/
ARG CKAN_REPO=ckan/ckan
ARG CKAN_VERSION=2.8.8
ENV SITE_URL="${SITE_URL}"
ENV VENV_DIR=/app/ckan/default
ENV APP_DIR=/app
ENV CKAN_INI=/app/ckan/default/production.ini

WORKDIR "${APP_DIR}"

ENV DOCKERIZE_VERSION v0.6.1
RUN apk add --no-cache curl build-base \
&& curl -sLO https://github.com/jwilder/dockerize/releases/download/${DOCKERIZE_VERSION}/dockerize-alpine-linux-amd64-${DOCKERIZE_VERSION}.tar.gz \
&& tar -C /usr/local/bin -xzvf dockerize-alpine-linux-amd64-${DOCKERIZE_VERSION}.tar.gz \
&& rm dockerize-alpine-linux-amd64-${DOCKERIZE_VERSION}.tar.gz

# Install CKAN.

RUN . ${VENV_DIR}/bin/activate \
&& pip install setuptools==36.1 \
&& pip install -e "git+https://github.com/${CKAN_REPO}.git@ckan-${CKAN_VERSION}#egg=ckan" \
&& sed -i "s/psycopg2==2.4.5/psycopg2==2.7.7/g" "${VENV_DIR}/src/ckan/requirements.txt" \
&& ((test -f "${VENV_DIR}/src/ckan/requirements-py2.txt" && \
pip install -r "${VENV_DIR}/src/ckan/requirements-py2.txt") || \
pip install -r "${VENV_DIR}/src/ckan/requirements.txt") \
&& ln -s "${VENV_DIR}/src/ckan/who.ini" "${VENV_DIR}/who.ini" \
&& deactivate \
&& ln -s ${APP_DIR}/ckan /usr/lib/ckan \
&& fix-permissions ${APP_DIR}/ckan

COPY .docker/test.ini $CKAN_INI

COPY . ${APP_DIR}/

COPY .docker/scripts ${APP_DIR}/scripts

COPY .docker/scripts/ckan_cli ${VENV_DIR}/bin/

RUN chmod +x ${APP_DIR}/scripts/*.sh ${VENV_DIR}/bin/ckan_cli

# Init current extension.
RUN ${APP_DIR}/scripts/init-ext.sh

ENTRYPOINT ["/sbin/tini", "--", "/lagoon/entrypoints.sh"]
CMD ["/app/scripts/serve.sh"]
Loading