dkdeploy-typo3-cms 7.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +20 -0
- data/.rubocop.yml +23 -0
- data/.travis.yml +12 -0
- data/Berksfile +3 -0
- data/Berksfile.lock +66 -0
- data/CHANGELOG.md +12 -0
- data/CONTRIBUTORS.md +16 -0
- data/Gemfile +3 -0
- data/LICENSE +7 -0
- data/README.md +87 -0
- data/Rakefile +1 -0
- data/Vagrantfile +62 -0
- data/assets/dkdeploy-logo.png +0 -0
- data/config/vm/cookbooks/dkdeploy-typo3-cms/metadata.rb +12 -0
- data/config/vm/cookbooks/dkdeploy-typo3-cms/recipes/default.rb +71 -0
- data/dkdeploy-typo3-cms.gemspec +29 -0
- data/features/advanced_typo3.feature +156 -0
- data/features/caretaker_key_management.feature +36 -0
- data/features/clear_cache_on_rollback.feature +17 -0
- data/features/cli.feature +61 -0
- data/features/step_definitions/mysql.rb +75 -0
- data/features/step_definitions/typo3.rb +16 -0
- data/features/support/env.rb +11 -0
- data/features/typo3.feature +100 -0
- data/features/typoscript_upload_and_merge_config.feature +128 -0
- data/features/typoscript_upload_and_merge_pagets.feature +128 -0
- data/features/typoscript_upload_and_merge_userts.feature +128 -0
- data/features/update_database.feature +23 -0
- data/lib/capistrano/dkdeploy/typo3_cms.rb +37 -0
- data/lib/dkdeploy/typo3/cms.rb +1 -0
- data/lib/dkdeploy/typo3/cms/dsl.rb +27 -0
- data/lib/dkdeploy/typo3/cms/helpers/cli.rb +165 -0
- data/lib/dkdeploy/typo3/cms/helpers/erb.rb +25 -0
- data/lib/dkdeploy/typo3/cms/i18n.rb +111 -0
- data/lib/dkdeploy/typo3/cms/tasks/cache.rake +18 -0
- data/lib/dkdeploy/typo3/cms/tasks/caretaker_key_management.rake +60 -0
- data/lib/dkdeploy/typo3/cms/tasks/cli.rake +45 -0
- data/lib/dkdeploy/typo3/cms/tasks/typo3.rake +272 -0
- data/lib/dkdeploy/typo3/cms/tasks/typoscript.rake +288 -0
- data/lib/dkdeploy/typo3/cms/version.rb +16 -0
- data/spec/fixtures/application/Capfile +8 -0
- data/spec/fixtures/application/Gemfile +3 -0
- data/spec/fixtures/application/config/deploy.rb +8 -0
- data/spec/fixtures/application/config/deploy/dev.rb +41 -0
- data/spec/fixtures/application/htdocs/.hidden/.gitkeep +0 -0
- data/spec/fixtures/application/htdocs/catalog/index.html +1 -0
- data/spec/fixtures/application/htdocs/composer.json +24 -0
- data/spec/fixtures/application/htdocs/typo3/cli_dispatch.phpsh +2 -0
- data/spec/fixtures/application/htdocs/typo3conf/AdditionalConfiguration.php +3 -0
- data/spec/fixtures/application/htdocs/typo3conf/LocalConfiguration.php +28 -0
- data/spec/fixtures/application/htdocs/typo3conf/PackageStates.php +358 -0
- data/spec/fixtures/application/vendor/composer.phar +0 -0
- data/spec/fixtures/capistrano/configuration/additional_configuration_for_server.rb +1 -0
- data/spec/fixtures/capistrano/configuration/cli_break_after_one_run_in_release_path.rb +14 -0
- data/spec/fixtures/capistrano/configuration/cli_break_after_three_runs_in_release_path.rb +14 -0
- data/spec/fixtures/capistrano/configuration/cli_test_tasks.rb +19 -0
- data/spec/fixtures/capistrano/configuration/cli_test_tasks_with_path.rb +15 -0
- data/vendor/AdditionalConfiguration.php.erb +57 -0
- data/vendor/create_caretaker_instance_keys.php.erb +18 -0
- metadata +222 -0
@@ -0,0 +1,128 @@
|
|
1
|
+
Feature: Test tasks for namespace 'typo3:cms:typoscript'
|
2
|
+
|
3
|
+
Background:
|
4
|
+
Given a test app with the default configuration
|
5
|
+
And the remote server is cleared
|
6
|
+
|
7
|
+
Scenario: Merging remote config files
|
8
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages"
|
9
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages/config.dev.txt" with:
|
10
|
+
"""
|
11
|
+
content
|
12
|
+
"""
|
13
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages"
|
14
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages/config.dev.txt" with:
|
15
|
+
"""
|
16
|
+
different content
|
17
|
+
"""
|
18
|
+
When I run `cap dev typo3:cms:typoscript:merge_configs` interactively
|
19
|
+
And I type "typo3conf/ext/dkdeploy/res/demo1/typoscript/constants typo3conf/ext/dkdeploy/res/demo2/typoscript/constants"
|
20
|
+
And I close the stdin stream
|
21
|
+
Then the exit status should be 0
|
22
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages/config.dev.txt" should contain exactly:
|
23
|
+
"""
|
24
|
+
content
|
25
|
+
"""
|
26
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages/config.dev.txt" should contain exactly:
|
27
|
+
"""
|
28
|
+
different content
|
29
|
+
"""
|
30
|
+
|
31
|
+
Scenario: Uploading config files if file does not exist
|
32
|
+
When I run `cap dev typo3:cms:typoscript:upload_configs` interactively
|
33
|
+
And I type "nonexisting_file"
|
34
|
+
And I close the stdin stream
|
35
|
+
Then the exit status should be 0
|
36
|
+
Then the output should contain "Skipping htdocs/nonexisting_file"
|
37
|
+
|
38
|
+
Scenario: Uploading config files if everything works smoothly for one config file
|
39
|
+
Given an empty file named "htdocs/demo1/config.txt"
|
40
|
+
When I run `cap dev typo3:cms:typoscript:upload_configs` interactively
|
41
|
+
And I type "demo1"
|
42
|
+
And I close the stdin stream
|
43
|
+
Then the exit status should be 0
|
44
|
+
Then a remote file named "current_path/demo1/config.txt" should exist
|
45
|
+
|
46
|
+
Scenario: Uploading config files if everything works smoothly for several config files
|
47
|
+
Given a file named "htdocs/demo1/config.txt" with:
|
48
|
+
"""
|
49
|
+
first content
|
50
|
+
"""
|
51
|
+
Given a file named "htdocs/demo2/config.txt" with:
|
52
|
+
"""
|
53
|
+
second content
|
54
|
+
"""
|
55
|
+
Given a file named "htdocs/demo3/config.txt" with:
|
56
|
+
"""
|
57
|
+
third content
|
58
|
+
"""
|
59
|
+
When I run `cap dev typo3:cms:typoscript:upload_configs` interactively
|
60
|
+
And I type "demo1 demo2 demo3"
|
61
|
+
And I close the stdin stream
|
62
|
+
Then the exit status should be 0
|
63
|
+
Then the remote file "current_path/demo1/config.txt" should contain exactly:
|
64
|
+
"""
|
65
|
+
first content
|
66
|
+
"""
|
67
|
+
Then the remote file "current_path/demo2/config.txt" should contain exactly:
|
68
|
+
"""
|
69
|
+
second content
|
70
|
+
"""
|
71
|
+
Then the remote file "current_path/demo3/config.txt" should contain exactly:
|
72
|
+
"""
|
73
|
+
third content
|
74
|
+
"""
|
75
|
+
|
76
|
+
Scenario: Uploading all config files from base path if everything works smoothly for several config files
|
77
|
+
Given a file named "htdocs/demo1/config.txt" with:
|
78
|
+
"""
|
79
|
+
first content
|
80
|
+
"""
|
81
|
+
Given a file named "htdocs/demo2/config.txt" with:
|
82
|
+
"""
|
83
|
+
second content
|
84
|
+
"""
|
85
|
+
Given a file named "htdocs/demo3/config.txt" with:
|
86
|
+
"""
|
87
|
+
third content
|
88
|
+
"""
|
89
|
+
When I run `cap dev typo3:cms:typoscript:upload_config_from_base_path` interactively
|
90
|
+
And I type "."
|
91
|
+
And I close the stdin stream
|
92
|
+
Then the exit status should be 0
|
93
|
+
Then the remote file "current_path/demo1/config.txt" should contain exactly:
|
94
|
+
"""
|
95
|
+
first content
|
96
|
+
"""
|
97
|
+
Then the remote file "current_path/demo2/config.txt" should contain exactly:
|
98
|
+
"""
|
99
|
+
second content
|
100
|
+
"""
|
101
|
+
Then the remote file "current_path/demo3/config.txt" should contain exactly:
|
102
|
+
"""
|
103
|
+
third content
|
104
|
+
"""
|
105
|
+
|
106
|
+
Scenario: Merging all remote config files in a given base path
|
107
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages"
|
108
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages/config.dev.txt" with:
|
109
|
+
"""
|
110
|
+
content
|
111
|
+
"""
|
112
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages"
|
113
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages/config.dev.txt" with:
|
114
|
+
"""
|
115
|
+
different content
|
116
|
+
"""
|
117
|
+
When I run `cap dev typo3:cms:typoscript:merge_config_in_base_path` interactively
|
118
|
+
And I type "typo3conf/ext/dkdeploy"
|
119
|
+
And I close the stdin stream
|
120
|
+
Then the exit status should be 0
|
121
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/config.txt" should contain exactly:
|
122
|
+
"""
|
123
|
+
content
|
124
|
+
"""
|
125
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/config.txt" should contain exactly:
|
126
|
+
"""
|
127
|
+
different content
|
128
|
+
"""
|
@@ -0,0 +1,128 @@
|
|
1
|
+
Feature: Test tasks for namespace 'typo3:cms:typoscript'
|
2
|
+
|
3
|
+
Background:
|
4
|
+
Given a test app with the default configuration
|
5
|
+
And the remote server is cleared
|
6
|
+
|
7
|
+
Scenario: Merging remote PageTS files
|
8
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/Stages"
|
9
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/Stages/PageTS.dev.txt" with:
|
10
|
+
"""
|
11
|
+
content
|
12
|
+
"""
|
13
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/Stages"
|
14
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/Stages/PageTS.dev.txt" with:
|
15
|
+
"""
|
16
|
+
different content
|
17
|
+
"""
|
18
|
+
When I run `cap dev typo3:cms:typoscript:merge_pagets` interactively
|
19
|
+
And I type "typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf"
|
20
|
+
And I close the stdin stream
|
21
|
+
Then the exit status should be 0
|
22
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/PageTS.txt" should contain exactly:
|
23
|
+
"""
|
24
|
+
content
|
25
|
+
"""
|
26
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/PageTS.txt" should contain exactly:
|
27
|
+
"""
|
28
|
+
different content
|
29
|
+
"""
|
30
|
+
|
31
|
+
Scenario: Uploading PageTS files if file does not exist
|
32
|
+
When I run `cap dev typo3:cms:typoscript:upload_pagets` interactively
|
33
|
+
And I type "nonexisting_file"
|
34
|
+
And I close the stdin stream
|
35
|
+
Then the exit status should be 0
|
36
|
+
Then the output should contain "Skipping htdocs/nonexisting_file"
|
37
|
+
|
38
|
+
Scenario: Uploading PageTS files if everything works smoothly for one config file
|
39
|
+
Given an empty file named "htdocs/demo1/PageTS.txt"
|
40
|
+
When I run `cap dev typo3:cms:typoscript:upload_pagets` interactively
|
41
|
+
And I type "demo1"
|
42
|
+
And I close the stdin stream
|
43
|
+
Then the exit status should be 0
|
44
|
+
Then a remote file named "current_path/demo1/PageTS.txt" should exist
|
45
|
+
|
46
|
+
Scenario: Uploading PageTS files if everything works smoothly for several PageTS files
|
47
|
+
Given a file named "htdocs/demo1/PageTS.txt" with:
|
48
|
+
"""
|
49
|
+
first content
|
50
|
+
"""
|
51
|
+
Given a file named "htdocs/demo2/PageTS.txt" with:
|
52
|
+
"""
|
53
|
+
second content
|
54
|
+
"""
|
55
|
+
Given a file named "htdocs/demo3/PageTS.txt" with:
|
56
|
+
"""
|
57
|
+
third content
|
58
|
+
"""
|
59
|
+
When I run `cap dev typo3:cms:typoscript:upload_pagets` interactively
|
60
|
+
And I type "demo1 demo2 demo3"
|
61
|
+
And I close the stdin stream
|
62
|
+
Then the exit status should be 0
|
63
|
+
Then the remote file "current_path/demo1/PageTS.txt" should contain exactly:
|
64
|
+
"""
|
65
|
+
first content
|
66
|
+
"""
|
67
|
+
Then the remote file "current_path/demo2/PageTS.txt" should contain exactly:
|
68
|
+
"""
|
69
|
+
second content
|
70
|
+
"""
|
71
|
+
Then the remote file "current_path/demo3/PageTS.txt" should contain exactly:
|
72
|
+
"""
|
73
|
+
third content
|
74
|
+
"""
|
75
|
+
|
76
|
+
Scenario: Uploading all PageTS files from base path if everything works smoothly for several config files
|
77
|
+
Given a file named "htdocs/demo1/PageTS.txt" with:
|
78
|
+
"""
|
79
|
+
first content
|
80
|
+
"""
|
81
|
+
Given a file named "htdocs/demo2/PageTS.txt" with:
|
82
|
+
"""
|
83
|
+
second content
|
84
|
+
"""
|
85
|
+
Given a file named "htdocs/demo3/PageTS.txt" with:
|
86
|
+
"""
|
87
|
+
third content
|
88
|
+
"""
|
89
|
+
When I run `cap dev typo3:cms:typoscript:upload_pagets_from_base_path` interactively
|
90
|
+
And I type "."
|
91
|
+
And I close the stdin stream
|
92
|
+
Then the exit status should be 0
|
93
|
+
Then the remote file "current_path/demo1/PageTS.txt" should contain exactly:
|
94
|
+
"""
|
95
|
+
first content
|
96
|
+
"""
|
97
|
+
Then the remote file "current_path/demo2/PageTS.txt" should contain exactly:
|
98
|
+
"""
|
99
|
+
second content
|
100
|
+
"""
|
101
|
+
Then the remote file "current_path/demo3/PageTS.txt" should contain exactly:
|
102
|
+
"""
|
103
|
+
third content
|
104
|
+
"""
|
105
|
+
|
106
|
+
Scenario: Merging all remote PageTS files in a given base path
|
107
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages"
|
108
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages/PageTS.dev.txt" with:
|
109
|
+
"""
|
110
|
+
content
|
111
|
+
"""
|
112
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages"
|
113
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages/PageTS.dev.txt" with:
|
114
|
+
"""
|
115
|
+
different content
|
116
|
+
"""
|
117
|
+
When I run `cap dev typo3:cms:typoscript:merge_pagets_in_base_path` interactively
|
118
|
+
And I type "typo3conf/ext/dkdeploy"
|
119
|
+
And I close the stdin stream
|
120
|
+
Then the exit status should be 0
|
121
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/PageTS.txt" should contain exactly:
|
122
|
+
"""
|
123
|
+
content
|
124
|
+
"""
|
125
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/PageTS.txt" should contain exactly:
|
126
|
+
"""
|
127
|
+
different content
|
128
|
+
"""
|
@@ -0,0 +1,128 @@
|
|
1
|
+
Feature: Test tasks for namespace 'typo3:cms:typoscript'
|
2
|
+
|
3
|
+
Background:
|
4
|
+
Given a test app with the default configuration
|
5
|
+
And the remote server is cleared
|
6
|
+
|
7
|
+
Scenario: Merging remote UserTS files
|
8
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/Stages"
|
9
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/Stages/UserTS.dev.txt" with:
|
10
|
+
"""
|
11
|
+
content
|
12
|
+
"""
|
13
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/Stages"
|
14
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/Stages/UserTS.dev.txt" with:
|
15
|
+
"""
|
16
|
+
different content
|
17
|
+
"""
|
18
|
+
When I run `cap dev typo3:cms:typoscript:merge_userts` interactively
|
19
|
+
And I type "typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf"
|
20
|
+
And I close the stdin stream
|
21
|
+
Then the exit status should be 0
|
22
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy_2/Configuration/TypoScript/TSConf/UserTS.txt" should contain exactly:
|
23
|
+
"""
|
24
|
+
content
|
25
|
+
"""
|
26
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy_3/Configuration/TypoScript/TSConf/UserTS.txt" should contain exactly:
|
27
|
+
"""
|
28
|
+
different content
|
29
|
+
"""
|
30
|
+
|
31
|
+
Scenario: Uploading UserTS files if file does not exist
|
32
|
+
When I run `cap dev typo3:cms:typoscript:upload_userts` interactively
|
33
|
+
And I type "nonexisting_file"
|
34
|
+
And I close the stdin stream
|
35
|
+
Then the exit status should be 0
|
36
|
+
Then the output should contain "Skipping htdocs/nonexisting_file"
|
37
|
+
|
38
|
+
Scenario: Uploading UserTS files if everything works smoothly for one config file
|
39
|
+
Given an empty file named "htdocs/demo1/UserTS.txt"
|
40
|
+
When I run `cap dev typo3:cms:typoscript:upload_userts` interactively
|
41
|
+
And I type "demo1"
|
42
|
+
And I close the stdin stream
|
43
|
+
Then the exit status should be 0
|
44
|
+
Then a remote file named "current_path/demo1/UserTS.txt" should exist
|
45
|
+
|
46
|
+
Scenario: Uploading UserTS files if everything works smoothly for several UserTS files
|
47
|
+
Given a file named "htdocs/demo1/UserTS.txt" with:
|
48
|
+
"""
|
49
|
+
first content
|
50
|
+
"""
|
51
|
+
Given a file named "htdocs/demo2/UserTS.txt" with:
|
52
|
+
"""
|
53
|
+
second content
|
54
|
+
"""
|
55
|
+
Given a file named "htdocs/demo3/UserTS.txt" with:
|
56
|
+
"""
|
57
|
+
third content
|
58
|
+
"""
|
59
|
+
When I run `cap dev typo3:cms:typoscript:upload_userts` interactively
|
60
|
+
And I type "demo1 demo2 demo3"
|
61
|
+
And I close the stdin stream
|
62
|
+
Then the exit status should be 0
|
63
|
+
Then the remote file "current_path/demo1/UserTS.txt" should contain exactly:
|
64
|
+
"""
|
65
|
+
first content
|
66
|
+
"""
|
67
|
+
Then the remote file "current_path/demo2/UserTS.txt" should contain exactly:
|
68
|
+
"""
|
69
|
+
second content
|
70
|
+
"""
|
71
|
+
Then the remote file "current_path/demo3/UserTS.txt" should contain exactly:
|
72
|
+
"""
|
73
|
+
third content
|
74
|
+
"""
|
75
|
+
|
76
|
+
Scenario: Uploading all UserTS files from base path if everything works smoothly for several config files
|
77
|
+
Given a file named "htdocs/demo1/UserTS.txt" with:
|
78
|
+
"""
|
79
|
+
first content
|
80
|
+
"""
|
81
|
+
Given a file named "htdocs/demo2/UserTS.txt" with:
|
82
|
+
"""
|
83
|
+
second content
|
84
|
+
"""
|
85
|
+
Given a file named "htdocs/demo3/UserTS.txt" with:
|
86
|
+
"""
|
87
|
+
third content
|
88
|
+
"""
|
89
|
+
When I run `cap dev typo3:cms:typoscript:upload_userts_from_base_path` interactively
|
90
|
+
And I type "."
|
91
|
+
And I close the stdin stream
|
92
|
+
Then the exit status should be 0
|
93
|
+
Then the remote file "current_path/demo1/UserTS.txt" should contain exactly:
|
94
|
+
"""
|
95
|
+
first content
|
96
|
+
"""
|
97
|
+
Then the remote file "current_path/demo2/UserTS.txt" should contain exactly:
|
98
|
+
"""
|
99
|
+
second content
|
100
|
+
"""
|
101
|
+
Then the remote file "current_path/demo3/UserTS.txt" should contain exactly:
|
102
|
+
"""
|
103
|
+
third content
|
104
|
+
"""
|
105
|
+
|
106
|
+
Scenario: Merging all remote UserTS files in a given base path
|
107
|
+
Given a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages"
|
108
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/Stages/UserTS.dev.txt" with:
|
109
|
+
"""
|
110
|
+
content
|
111
|
+
"""
|
112
|
+
And a remote directory named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages"
|
113
|
+
And a remote file named "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/Stages/UserTS.dev.txt" with:
|
114
|
+
"""
|
115
|
+
different content
|
116
|
+
"""
|
117
|
+
When I run `cap dev typo3:cms:typoscript:merge_userts_in_base_path` interactively
|
118
|
+
And I type "typo3conf/ext/dkdeploy"
|
119
|
+
And I close the stdin stream
|
120
|
+
Then the exit status should be 0
|
121
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo1/typoscript/constants/UserTS.txt" should contain exactly:
|
122
|
+
"""
|
123
|
+
content
|
124
|
+
"""
|
125
|
+
Then the remote file "current_path/typo3conf/ext/dkdeploy/res/demo2/typoscript/constants/UserTS.txt" should contain exactly:
|
126
|
+
"""
|
127
|
+
different content
|
128
|
+
"""
|
@@ -0,0 +1,23 @@
|
|
1
|
+
Feature: Test tasks for namespace 'typo3:cms'
|
2
|
+
|
3
|
+
Background:
|
4
|
+
Given a test app with the default configuration
|
5
|
+
And the remote server is cleared
|
6
|
+
And I want to use the database `dkdeploy_typo3_cms`
|
7
|
+
And a successfully deployed TYPO3 application
|
8
|
+
|
9
|
+
Scenario: Rename not needed table to "zzz_deleted_"
|
10
|
+
Given the database table `no_needed_table` exists
|
11
|
+
When I successfully run `cap dev typo3:cms:update_database`
|
12
|
+
Then the database should not have a table `no_needed_table`
|
13
|
+
Then the database should have a table `zzz_deleted_no_needed_table`
|
14
|
+
|
15
|
+
Scenario: Create needed table if needed
|
16
|
+
Given drop the database table `tx_realurl_urldata`
|
17
|
+
When I successfully run `cap dev typo3:cms:update_database`
|
18
|
+
Then the database should have a table `tx_realurl_urldata`
|
19
|
+
|
20
|
+
Scenario: Do not delete needed tables
|
21
|
+
Given the database table `tx_realurl_urldata` exists
|
22
|
+
When I successfully run `cap dev typo3:cms:update_database`
|
23
|
+
Then the database should not have a table `zzz_deleted_tx_realurl_urldata`
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require 'capistrano/dkdeploy/php'
|
2
|
+
|
3
|
+
include Capistrano::DSL
|
4
|
+
|
5
|
+
# Load dkdeploy tasks
|
6
|
+
load File.expand_path('../../../dkdeploy/typo3/cms/tasks/typo3.rake', __FILE__)
|
7
|
+
load File.expand_path('../../../dkdeploy/typo3/cms/tasks/typoscript.rake', __FILE__)
|
8
|
+
load File.expand_path('../../../dkdeploy/typo3/cms/tasks/cache.rake', __FILE__)
|
9
|
+
load File.expand_path('../../../dkdeploy/typo3/cms/tasks/cli.rake', __FILE__)
|
10
|
+
load File.expand_path('../../../dkdeploy/typo3/cms/tasks/caretaker_key_management.rake', __FILE__)
|
11
|
+
|
12
|
+
namespace :load do
|
13
|
+
task :defaults do
|
14
|
+
set :typoscript_userts_file, 'UserTS.txt'
|
15
|
+
set :typoscript_pagets_file, 'PageTS.txt'
|
16
|
+
set :typoscript_config_file, 'config.txt'
|
17
|
+
set :create_new_caretaker_keys, 'false'
|
18
|
+
set :caretaker_public_key_path, -> { File.join(shared_path, 'config', 'pubkey.pem') }
|
19
|
+
set :caretaker_private_key_path, -> { File.join(shared_path, 'config', 'privkey.pem') }
|
20
|
+
set :create_caretaker_instance_keys_template, -> { File.join(__dir__, '..', '..', '..', 'vendor', 'create_caretaker_instance_keys.php.erb') }
|
21
|
+
set :create_caretaker_instance_keys_path, -> { File.join(shared_path, 'config', 'create_caretaker_instance_keys.php') }
|
22
|
+
set :caretaker_instance_keys_path, -> { File.join(shared_path, 'config', 'caretaker_instance_keys.php') }
|
23
|
+
|
24
|
+
# Use custom Composer autoload
|
25
|
+
set :typo3_environment_cli, {
|
26
|
+
TYPO3_COMPOSER_AUTOLOAD: 1,
|
27
|
+
TERM: 'screen-256color'
|
28
|
+
}
|
29
|
+
# Path to typo3_console. Relative path to typo3_console script
|
30
|
+
set :path_to_typo3_console, 'bin/typo3cms'
|
31
|
+
|
32
|
+
set :additional_configuration_template, File.join(__dir__, '..', '..', '..', 'vendor', 'AdditionalConfiguration.php.erb')
|
33
|
+
set :additional_configuration_files, []
|
34
|
+
|
35
|
+
add_rollback_task('typo3:cms:cache:clear_file_cache')
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'dkdeploy/typo3/cms/version'
|