travis2docker 6.4.22__tar.gz → 6.4.24__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. {travis2docker-6.4.22 → travis2docker-6.4.24}/.bumpversion.cfg +1 -1
  2. {travis2docker-6.4.22 → travis2docker-6.4.24}/PKG-INFO +3 -5
  3. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/conf.py +1 -1
  4. travis2docker-6.4.24/setup.py +70 -0
  5. travis2docker-6.4.24/src/travis2docker/__init__.py +1 -0
  6. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/__main__.py +1 -0
  7. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/cli.py +102 -110
  8. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/docker_helper/build.py +16 -8
  9. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/git_run.py +27 -28
  10. travis2docker-6.4.24/src/travis2docker/templates/20-run.sh +17 -0
  11. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/Dockerfile_deployv +1 -0
  12. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/build.sh +9 -0
  13. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis2docker.py +114 -104
  14. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/PKG-INFO +3 -5
  15. travis2docker-6.4.24/tests/test_travis2docker.py +156 -0
  16. {travis2docker-6.4.22 → travis2docker-6.4.24}/tox.ini +1 -1
  17. travis2docker-6.4.22/setup.py +0 -74
  18. travis2docker-6.4.22/src/travis2docker/__init__.py +0 -1
  19. travis2docker-6.4.22/src/travis2docker/templates/20-run.sh +0 -4
  20. travis2docker-6.4.22/tests/test_travis2docker.py +0 -144
  21. {travis2docker-6.4.22 → travis2docker-6.4.24}/.coveragerc +0 -0
  22. {travis2docker-6.4.22 → travis2docker-6.4.24}/AUTHORS.rst +0 -0
  23. {travis2docker-6.4.22 → travis2docker-6.4.24}/CHANGELOG.rst +0 -0
  24. {travis2docker-6.4.22 → travis2docker-6.4.24}/CONTRIBUTING.rst +0 -0
  25. {travis2docker-6.4.22 → travis2docker-6.4.24}/LICENSE +0 -0
  26. {travis2docker-6.4.22 → travis2docker-6.4.24}/MANIFEST.in +0 -0
  27. {travis2docker-6.4.22 → travis2docker-6.4.24}/README.rst +0 -0
  28. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/authors.rst +0 -0
  29. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/changelog.rst +0 -0
  30. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/contributing.rst +0 -0
  31. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/index.rst +0 -0
  32. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/installation.rst +0 -0
  33. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/readme.rst +0 -0
  34. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/reference/index.rst +0 -0
  35. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/reference/travis2docker.rst +0 -0
  36. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/requirements.txt +0 -0
  37. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/spelling_wordlist.txt +0 -0
  38. {travis2docker-6.4.22 → travis2docker-6.4.24}/docs/usage.rst +0 -0
  39. {travis2docker-6.4.22 → travis2docker-6.4.24}/examples/example_1.yml +0 -0
  40. {travis2docker-6.4.22 → travis2docker-6.4.24}/examples/example_2.yml +0 -0
  41. {travis2docker-6.4.22 → travis2docker-6.4.24}/examples/example_3.yml +0 -0
  42. {travis2docker-6.4.22 → travis2docker-6.4.24}/examples/example_4.yml +0 -0
  43. {travis2docker-6.4.22 → travis2docker-6.4.24}/examples/example_5.yml +0 -0
  44. {travis2docker-6.4.22 → travis2docker-6.4.24}/requirements.txt +0 -0
  45. {travis2docker-6.4.22 → travis2docker-6.4.24}/setup.cfg +0 -0
  46. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/exceptions.py +0 -0
  47. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/.coveragerc +0 -0
  48. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/.vscode/extensions.json +0 -0
  49. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/.vscode/launch.json +0 -0
  50. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/.vscode/settings.json +0 -0
  51. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/10-build.sh +0 -0
  52. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/Dockerfile +0 -0
  53. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/entrypoint.sh +0 -0
  54. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/entrypoint_deployv.sh +0 -0
  55. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/templates/rvm_env.sh +0 -0
  56. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/.git +0 -0
  57. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/.gitignore +0 -0
  58. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/.travis.yml +0 -0
  59. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/LICENSE +0 -0
  60. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/README.md +0 -0
  61. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/add_all.rb +0 -0
  62. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/bin/travis-add-source +0 -0
  63. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker/travis-ci-apt-source-whitelist/ubuntu.json +0 -0
  64. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/SOURCES.txt +0 -0
  65. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/dependency_links.txt +0 -0
  66. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/entry_points.txt +0 -0
  67. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/not-zip-safe +0 -0
  68. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/requires.txt +0 -0
  69. {travis2docker-6.4.22 → travis2docker-6.4.24}/src/travis2docker.egg-info/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  [bumpversion]
2
- current_version = 6.4.22
2
+ current_version = 6.4.24
3
3
  commit = True
4
4
  tag = True
5
5
 
@@ -1,26 +1,24 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: travis2docker
3
- Version: 6.4.22
3
+ Version: 6.4.24
4
4
  Summary: Script to generate Dockerfile from .travis.yml file
5
5
  Home-page: https://github.com/vauxoo/travis2docker
6
6
  Author: Vauxoo
7
7
  Author-email: info@vauxoo.com
8
- License: BSD
8
+ License: BSD-3-Clause
9
9
  Classifier: Development Status :: 5 - Production/Stable
10
10
  Classifier: Intended Audience :: Developers
11
- Classifier: License :: OSI Approved :: BSD License
12
11
  Classifier: Operating System :: Unix
13
12
  Classifier: Operating System :: POSIX
14
13
  Classifier: Operating System :: Microsoft :: Windows
15
14
  Classifier: Programming Language :: Python
16
15
  Classifier: Programming Language :: Python :: 3
17
- Classifier: Programming Language :: Python :: 3.5
18
- Classifier: Programming Language :: Python :: 3.7
19
16
  Classifier: Programming Language :: Python :: 3.8
20
17
  Classifier: Programming Language :: Python :: 3.9
21
18
  Classifier: Programming Language :: Python :: 3.10
22
19
  Classifier: Programming Language :: Python :: 3.11
23
20
  Classifier: Programming Language :: Python :: 3.12
21
+ Classifier: Programming Language :: Python :: 3.13
24
22
  Classifier: Programming Language :: Python :: Implementation :: CPython
25
23
  Classifier: Programming Language :: Python :: Implementation :: PyPy
26
24
  Classifier: Topic :: Utilities
@@ -26,7 +26,7 @@ project = u'travis2docker'
26
26
  year = '2016'
27
27
  author = u'Vauxoo'
28
28
  copyright = '{0}, {1}'.format(year, author)
29
- version = release = u'6.4.22'
29
+ version = release = u'6.4.24'
30
30
 
31
31
  pygments_style = 'trac'
32
32
  templates_path = ['.']
@@ -0,0 +1,70 @@
1
+ #!/usr/bin/env python
2
+
3
+ import re
4
+ from glob import glob
5
+ from os.path import basename, dirname, join, splitext
6
+
7
+ from setuptools import find_packages, setup
8
+
9
+
10
+ def read(*names, **kwargs):
11
+ return open(join(dirname(__file__), *names), encoding=kwargs.get("encoding", "utf8")).read()
12
+
13
+
14
+ setup(
15
+ name="travis2docker",
16
+ version="6.4.24",
17
+ license="BSD-3-Clause",
18
+ description="Script to generate Dockerfile from .travis.yml file",
19
+ long_description="%s\n%s"
20
+ % (
21
+ re.compile("^.. start-badges.*^.. end-badges", re.M | re.S).sub("", read("README.rst")),
22
+ re.sub(":[a-z]+:`~?(.*?)`", r"``\1``", read("CHANGELOG.rst")),
23
+ ),
24
+ long_description_content_type="text/x-rst",
25
+ author="Vauxoo",
26
+ author_email="info@vauxoo.com",
27
+ url="https://github.com/vauxoo/travis2docker",
28
+ packages=find_packages("src"),
29
+ package_dir={"": "src"},
30
+ py_modules=[splitext(basename(path))[0] for path in glob("src/*.py")],
31
+ include_package_data=True,
32
+ zip_safe=False,
33
+ classifiers=[
34
+ # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers
35
+ "Development Status :: 5 - Production/Stable",
36
+ "Intended Audience :: Developers",
37
+ "Operating System :: Unix",
38
+ "Operating System :: POSIX",
39
+ "Operating System :: Microsoft :: Windows",
40
+ "Programming Language :: Python",
41
+ "Programming Language :: Python :: 3",
42
+ "Programming Language :: Python :: 3.8",
43
+ "Programming Language :: Python :: 3.9",
44
+ "Programming Language :: Python :: 3.10",
45
+ "Programming Language :: Python :: 3.11",
46
+ "Programming Language :: Python :: 3.12",
47
+ "Programming Language :: Python :: 3.13",
48
+ "Programming Language :: Python :: Implementation :: CPython",
49
+ "Programming Language :: Python :: Implementation :: PyPy",
50
+ # uncomment if you test on these interpreters:
51
+ # 'Programming Language :: Python :: Implementation :: IronPython',
52
+ # 'Programming Language :: Python :: Implementation :: Jython',
53
+ # 'Programming Language :: Python :: Implementation :: Stackless',
54
+ "Topic :: Utilities",
55
+ ],
56
+ keywords=[
57
+ # eg: 'keyword1', 'keyword2', 'keyword3',
58
+ ],
59
+ install_requires=read("requirements.txt").split("\n"),
60
+ extras_require={
61
+ # eg:
62
+ # 'rst': ['docutils>=0.11'],
63
+ # ':python_version=="2.6"': ['argparse'],
64
+ },
65
+ entry_points={
66
+ "console_scripts": [
67
+ "travisfile2dockerfile = travis2docker.cli:main",
68
+ ]
69
+ },
70
+ )
@@ -0,0 +1 @@
1
+ __version__ = "6.4.24"
@@ -7,6 +7,7 @@ Why does this file exist, and why __main__? For more info, read:
7
7
  - https://docs.python.org/2/using/cmdline.html#cmdoption-m
8
8
  - https://docs.python.org/3/using/cmdline.html#cmdoption-m
9
9
  """
10
+
10
11
  from .cli import main
11
12
 
12
13
  if __name__ == "__main__":
@@ -12,6 +12,7 @@ Why does this file exist, and why not put this in __main__?
12
12
  there's no ``travis2docker.__main__`` in ``sys.modules``.
13
13
 
14
14
  """
15
+
15
16
  import argparse
16
17
  import os
17
18
  from os.path import expanduser, expandvars, isdir, isfile, join
@@ -27,15 +28,15 @@ def get_git_data(project, path, revision):
27
28
  git_obj = GitRun(project, path, path_prefix_repo=True)
28
29
  git_obj.update()
29
30
  data = {
30
- 'sha': git_obj.get_sha(revision),
31
- 'content': git_obj.show_file('.travis.yml', revision) or git_obj.show_file('.t2d.yml', revision),
32
- 'variables_sh': git_obj.show_file('variables.sh', revision),
33
- 'repo_owner': git_obj.owner,
34
- 'repo_project': git_obj.repo,
35
- 'git_email': git_obj.get_config_data("user.email"),
36
- 'git_user': git_obj.get_config_data("user.name"),
37
- 'revision': revision,
38
- 'project': project,
31
+ "sha": git_obj.get_sha(revision),
32
+ "content": git_obj.show_file(".travis.yml", revision) or git_obj.show_file(".t2d.yml", revision),
33
+ "variables_sh": git_obj.show_file("variables.sh", revision),
34
+ "repo_owner": git_obj.owner,
35
+ "repo_project": git_obj.repo,
36
+ "git_email": git_obj.get_config_data("user.email"),
37
+ "git_user": git_obj.get_config_data("user.name"),
38
+ "revision": revision,
39
+ "project": project,
39
40
  }
40
41
  return data
41
42
 
@@ -44,14 +45,14 @@ def yml_read(yml_path):
44
45
  yml_path_expanded = expandvars(expanduser(yml_path))
45
46
  alt_yml_path_expanded = None
46
47
  if isdir(yml_path_expanded):
47
- yml_path_expanded = join(yml_path_expanded, '.travis.yml')
48
- alt_yml_path_expanded = join(yml_path_expanded, '.t2d.yml')
48
+ yml_path_expanded = join(yml_path_expanded, ".travis.yml")
49
+ alt_yml_path_expanded = join(yml_path_expanded, ".t2d.yml")
49
50
  if not isfile(yml_path_expanded):
50
51
  if alt_yml_path_expanded and isfile(alt_yml_path_expanded):
51
52
  yml_path_expanded = alt_yml_path_expanded
52
53
  else:
53
54
  return
54
- with open(yml_path_expanded, "r") as f_yml:
55
+ with open(yml_path_expanded) as f_yml:
55
56
  return f_yml.read()
56
57
 
57
58
 
@@ -75,122 +76,122 @@ def main(return_result=False):
75
76
  "NOTE: A sha e.g. b48228 NOT IMPLEMENTED YET",
76
77
  )
77
78
  parser.add_argument(
78
- '--docker-user',
79
- dest='docker_user',
79
+ "--docker-user",
80
+ dest="docker_user",
80
81
  help="User of work into Dockerfile." "\nBased on your docker image." "\nDefault: root",
81
82
  )
82
83
  parser.add_argument(
83
- '--docker-image',
84
- dest='default_docker_image',
84
+ "--docker-image",
85
+ dest="default_docker_image",
85
86
  help="Docker image to use by default in Dockerfile."
86
87
  "\nUse this parameter if don't "
87
88
  "exists value: 'build_image: IMAGE_NAME' "
88
89
  "in .travis.yml"
89
90
  "\nDefault: 'vauxoo/odoo-80-image-shippable-auto'",
90
91
  )
91
- default_root_path = os.environ.get('TRAVIS2DOCKER_ROOT_PATH')
92
+ default_root_path = os.environ.get("TRAVIS2DOCKER_ROOT_PATH")
92
93
  if not default_root_path:
93
94
  default_root_path = os.path.expanduser("~")
94
- default_root_path = join(default_root_path, '.t2d')
95
+ default_root_path = join(default_root_path, ".t2d")
95
96
  parser.add_argument(
96
- '--root-path',
97
- dest='root_path',
97
+ "--root-path",
98
+ dest="root_path",
98
99
  help=f"Root path to save scripts generated.\nDefault: {default_root_path}",
99
100
  default=default_root_path,
100
101
  )
101
102
  parser.add_argument(
102
- '--add-remote',
103
- dest='remotes',
104
- help='Add git remote to git of build path, separated by a comma.' "\nUse remote name. E.g. 'Vauxoo,moylop260'",
103
+ "--add-remote",
104
+ dest="remotes",
105
+ help="Add git remote to git of build path, separated by a comma." "\nUse remote name. E.g. 'Vauxoo,moylop260'",
105
106
  )
106
107
  parser.add_argument(
107
- '--exclude-after-success',
108
- dest='exclude_after_success',
109
- action='store_true',
108
+ "--exclude-after-success",
109
+ dest="exclude_after_success",
110
+ action="store_true",
110
111
  default=False,
111
- help='Exclude `travis_after_success` section to entrypoint',
112
+ help="Exclude `travis_after_success` section to entrypoint",
112
113
  )
113
114
  parser.add_argument(
114
- '--run-extra-args',
115
- dest='run_extra_args',
115
+ "--run-extra-args",
116
+ dest="run_extra_args",
116
117
  help="Extra arguments to `docker run RUN_EXTRA_ARGS` command",
117
- default='-itP -e LANG=C.UTF-8',
118
+ default="-itP -e LANG=C.UTF-8",
118
119
  )
119
120
  parser.add_argument(
120
- '--run-extra-cmds',
121
- dest='run_extra_cmds',
122
- nargs='*',
121
+ "--run-extra-cmds",
122
+ dest="run_extra_cmds",
123
+ nargs="*",
123
124
  default="",
124
125
  help='Extra commands to run after "run" script. '
125
- 'Note: You can use \\$IMAGE escaped environment variable.'
126
+ "Note: You can use \\$IMAGE escaped environment variable."
126
127
  'E.g. "docker rmi -f \\$IMAGE"',
127
128
  )
128
129
  parser.add_argument(
129
- '--build-extra-args',
130
- dest='build_extra_args',
130
+ "--build-extra-args",
131
+ dest="build_extra_args",
131
132
  help="Extra arguments to `docker build BUILD_EXTRA_ARGS` command",
132
- default='--rm',
133
+ default="--rm",
133
134
  )
134
135
  parser.add_argument(
135
- '--build-extra-cmds',
136
- dest='build_extra_cmds',
137
- nargs='*',
136
+ "--build-extra-cmds",
137
+ dest="build_extra_cmds",
138
+ nargs="*",
138
139
  default="",
139
- help='Extra commands to run after "build" script. ' 'Note: You can use \\$IMAGE escaped environment variable.',
140
+ help='Extra commands to run after "build" script. ' "Note: You can use \\$IMAGE escaped environment variable.",
140
141
  )
141
142
  parser.add_argument(
142
- '--travis-yml-path',
143
- dest='travis_yml_path',
143
+ "--travis-yml-path",
144
+ dest="travis_yml_path",
144
145
  help="Optional path of file .travis.yml to use.\n" "Default: Extracted from git repo and git revision.",
145
146
  default=None,
146
147
  )
147
148
  parser.add_argument(
148
- '--no-clone',
149
- dest='no_clone',
150
- action='store_true',
149
+ "--no-clone",
150
+ dest="no_clone",
151
+ action="store_true",
151
152
  help="Avoid clone the repository. It will require travis-yml-path",
152
153
  default=False,
153
154
  )
154
155
  parser.add_argument(
155
- '--add-rcfile',
156
- dest='add_rcfile',
156
+ "--add-rcfile",
157
+ dest="add_rcfile",
157
158
  default="",
158
- help='Optional paths of configuration files to '
159
- 'copy for user\'s HOME path into container, separated by a comma.',
159
+ help="Optional paths of configuration files to "
160
+ "copy for user's HOME path into container, separated by a comma.",
160
161
  )
161
- parser.add_argument('-v', '--version', action='version', version='%(prog)s ' + __version__)
162
+ parser.add_argument("-v", "--version", action="version", version="%(prog)s " + __version__)
162
163
  parser.add_argument(
163
- '--runs-at-the-end-script',
164
- dest='runs_at_the_end_script',
165
- nargs='*',
164
+ "--runs-at-the-end-script",
165
+ dest="runs_at_the_end_script",
166
+ nargs="*",
166
167
  default="",
167
- help='Extra commands to run after "script" file. ' 'Note: You can use \\$IMAGE escaped environment variable.',
168
+ help='Extra commands to run after "script" file. ' "Note: You can use \\$IMAGE escaped environment variable.",
168
169
  )
169
170
  parser.add_argument(
170
- '--build-env-args',
171
- dest='build_env_args',
172
- nargs='*',
173
- action='append',
171
+ "--build-env-args",
172
+ dest="build_env_args",
173
+ nargs="*",
174
+ action="append",
174
175
  default=[],
175
- help='Args used as environment variables '
176
- 'More info about: https://vsupalov.com/docker-build-time-env-values\n'
177
- 'E.g. --build-env-args ENVAR1\n'
178
- 'It generates the following line for Dockerfile:\n'
179
- 'ARG ENVVAR1\nENV ENVVAR1=$ENVVAR1',
176
+ help="Args used as environment variables "
177
+ "More info about: https://vsupalov.com/docker-build-time-env-values\n"
178
+ "E.g. --build-env-args ENVAR1\n"
179
+ "It generates the following line for Dockerfile:\n"
180
+ "ARG ENVVAR1\nENV ENVVAR1=$ENVVAR1",
180
181
  )
181
182
  parser.add_argument(
182
- '--deployv',
183
- dest='deployv',
184
- action='store_true',
183
+ "--deployv",
184
+ dest="deployv",
185
+ action="store_true",
185
186
  default=False,
186
- help='Use the image generated from the CI and used in deployV',
187
+ help="Use the image generated from the CI and used in deployV",
187
188
  )
188
189
  parser.add_argument(
189
- '--build-extra-steps',
190
- nargs='*',
190
+ "--build-extra-steps",
191
+ nargs="*",
191
192
  default="",
192
- dest='build_extra_steps',
193
- help='Append these extra steps at the end of the Dockerfile',
193
+ dest="build_extra_steps",
194
+ help="Append these extra steps at the end of the Dockerfile",
194
195
  )
195
196
 
196
197
  args = parser.parse_args()
@@ -200,40 +201,40 @@ def main(return_result=False):
200
201
  docker_user = args.docker_user
201
202
  root_path = args.root_path
202
203
  default_docker_image = args.default_docker_image
203
- remotes = args.remotes and args.remotes.split(',')
204
+ remotes = args.remotes and args.remotes.split(",")
204
205
  exclude_after_success = args.exclude_after_success
205
206
  run_extra_args = args.run_extra_args
206
207
  build_extra_args = args.build_extra_args
207
208
  travis_yml_path = args.travis_yml_path
208
- build_extra_cmds = '\n'.join(args.build_extra_cmds)
209
- run_extra_cmds = '\n'.join(args.run_extra_cmds)
209
+ build_extra_cmds = "\n".join(args.build_extra_cmds)
210
+ run_extra_cmds = "\n".join(args.run_extra_cmds)
210
211
  no_clone = args.no_clone
211
212
  deployv = args.deployv
212
- rcfiles_args = args.add_rcfile and args.add_rcfile.split(',')
213
+ rcfiles_args = args.add_rcfile and args.add_rcfile.split(",")
213
214
  runs_at_the_end_script = args.runs_at_the_end_script or None
214
215
  build_env_args = [build_env_args[0] for build_env_args in args.build_env_args]
215
- rcfiles = [(expanduser(rc_file), os.path.join('$HOME', os.path.basename(rc_file))) for rc_file in rcfiles_args]
216
+ rcfiles = [(expanduser(rc_file), os.path.join("$HOME", os.path.basename(rc_file))) for rc_file in rcfiles_args]
216
217
  if no_clone:
217
218
  os_kwargs = {
218
- 'repo_owner': 'local_file',
219
- 'repo_project': 'local_file',
220
- 'revision': revision,
221
- 'sha': 'local_file',
222
- 'project': git_repo,
219
+ "repo_owner": "local_file",
220
+ "repo_project": "local_file",
221
+ "revision": revision,
222
+ "sha": "local_file",
223
+ "project": git_repo,
223
224
  }
224
225
  else:
225
- os_kwargs = get_git_data(git_repo, join(root_path, 'repo'), revision)
226
+ os_kwargs = get_git_data(git_repo, join(root_path, "repo"), revision)
226
227
 
227
228
  if travis_yml_path:
228
229
  yml_content = yml_read(travis_yml_path)
229
230
  else:
230
- yml_content = os_kwargs['content']
231
+ yml_content = os_kwargs["content"]
231
232
 
232
233
  if not yml_content and os_kwargs.get("variables_sh"):
233
234
  deployv = True
234
235
  yml_content = "deployv: True"
235
236
  if not default_docker_image and not deployv:
236
- default_docker_image = 'vauxoo/odoo-80-image-shippable-auto'
237
+ default_docker_image = "vauxoo/odoo-80-image-shippable-auto"
237
238
 
238
239
  if not yml_content:
239
240
  msg = (
@@ -246,12 +247,12 @@ def main(return_result=False):
246
247
  + "\nverify exists .travis.yml"
247
248
  )
248
249
  raise InvalidRepoBranchError(msg)
249
- os_kwargs.update({'remotes': remotes, 'git_base': git_base})
250
+ os_kwargs.update({"remotes": remotes, "git_base": git_base})
250
251
  if docker_user:
251
- os_kwargs.update({'user': docker_user})
252
+ os_kwargs.update({"user": docker_user})
252
253
  t2d = Travis2Docker(
253
254
  yml_buffer=yml_content,
254
- work_path=join(root_path, 'script', GitRun.url2dirname(git_repo), revision),
255
+ work_path=join(root_path, "script", GitRun.url2dirname(git_repo), revision),
255
256
  image=default_docker_image,
256
257
  os_kwargs=os_kwargs,
257
258
  copy_paths=[(expanduser("~/.ssh"), "$HOME/.ssh")] + rcfiles,
@@ -261,37 +262,28 @@ def main(return_result=False):
261
262
  build_extra_steps=args.build_extra_steps,
262
263
  )
263
264
  t2d.build_extra_params = {
264
- 'extra_params': build_extra_args,
265
- 'extra_cmds': build_extra_cmds,
265
+ "extra_params": build_extra_args,
266
+ "extra_cmds": build_extra_cmds,
266
267
  }
267
268
  t2d.run_extra_params = {
268
- 'extra_params': run_extra_args,
269
- 'extra_cmds': run_extra_cmds,
269
+ "extra_params": run_extra_args,
270
+ "extra_cmds": run_extra_cmds,
270
271
  }
271
272
  fname_scripts = t2d.compute_dockerfile(skip_after_success=exclude_after_success)
272
273
  if fname_scripts:
273
- fname_list = '- ' + '\n- '.join(fname_scripts)
274
- stdout.write('\nGenerated scripts:\n%s\n' % fname_list)
275
- if deployv:
274
+ fname_list = "- " + "\n- ".join(fname_scripts)
275
+ stdout.write("\nGenerated scripts:\n%s\n" % fname_list)
276
+ if deployv and not default_docker_image:
276
277
  stdout.write("=" * 80)
278
+ # TODO: Add the URL to open the pipelines
277
279
  stdout.write(
278
- '\nUsing --deployv option you will need to run the following extra step '
279
- 'manually after to create the container or after running 20-run.sh script'
280
- )
281
- stdout.write(
282
- '\ndocker exec -it --user=root CONTAINER '
283
- 'find /home/odoo -maxdepth 1 -not -user odoo -exec chown -R odoo:odoo {} \\;\n'
280
+ '\nTIP: Use the parameter "--docker-image=quay.io/vauxoo/PROJECT:TAG" '
281
+ 'get the PROJECT:TAG info in your "build_docker" pipeline similar to '
282
+ '\n"... INFO - deployv.deployv_addon_gitlab_tools.common.common.push_image - '
283
+ 'Pushing image ... to quay.io/vauxoo/PROJECT:TAG"\n'
284
284
  )
285
- if not default_docker_image:
286
- # TODO: Add the URL to open the pipelines
287
- stdout.write(
288
- '\nTIP: Use the parameter "--docker-image=quay.io/vauxoo/PROJECT:TAG" '
289
- 'get the PROJECT:TAG info in your "build_docker" pipeline similar to '
290
- '\n"... INFO - deployv.deployv_addon_gitlab_tools.common.common.push_image - '
291
- 'Pushing image ... to quay.io/vauxoo/PROJECT:TAG"\n'
292
- )
293
285
  stdout.write("=" * 80)
294
286
  else:
295
- stdout.write('\nNo scripts were generated.')
287
+ stdout.write("\nNo scripts were generated.")
296
288
  if return_result:
297
289
  return fname_scripts
@@ -15,12 +15,12 @@ def ssh_keyscan2known_hosts(url, known_hosts_path=None):
15
15
 
16
16
  # Clear current known hosts
17
17
  cmd = ["ssh-keygen", "-R", url]
18
- print(' '.join(cmd))
18
+ print(" ".join(cmd))
19
19
  subprocess.call(cmd)
20
20
 
21
21
  # Scan new key of host and store
22
22
  cmd = ["ssh-keyscan", "-p", "22", url]
23
- print(' '.join(cmd))
23
+ print(" ".join(cmd))
24
24
  keys_scanned = subprocess.check_output(cmd).decode(sys.stdout.encoding).strip()
25
25
  with open(known_hosts_path, "r+") as known_hosts_f:
26
26
  known_hosts_f.write("\n" + keys_scanned)
@@ -36,13 +36,21 @@ def git_set_remote(path=None):
36
36
  path = os.path.join(path, "*", "**", ".git")
37
37
  hosts_scanned = set()
38
38
  for git_dir in glob.glob(path, recursive=True):
39
- git_cmd = ["git", "--work-tree=%s" % os.path.dirname(git_dir), "--git-dir=%s" % git_dir]
39
+ git_cmd = [
40
+ "git",
41
+ "--work-tree=%s" % os.path.dirname(git_dir),
42
+ "--git-dir=%s" % git_dir,
43
+ ]
40
44
  cmd = git_cmd + ["remote", "get-url", "--push", "origin"]
41
45
  remote = subprocess.check_output(cmd).decode(sys.stdout.encoding).strip().splitlines()[0]
42
46
  git_re_match = git_re.search(remote)
43
47
 
44
48
  # Configure to fetch all branches (not only the single-branch)
45
- cmd = git_cmd + ["config", "remote.origin.fetch", "+refs/heads/*:refs/remotes/origin/*"]
49
+ cmd = git_cmd + [
50
+ "config",
51
+ "remote.origin.fetch",
52
+ "+refs/heads/*:refs/remotes/origin/*",
53
+ ]
46
54
  subprocess.call(cmd)
47
55
 
48
56
  if not git_re_match:
@@ -57,18 +65,18 @@ def git_set_remote(path=None):
57
65
  # Transform https url to ssh format
58
66
  ssh_url_stb = "git@%s:%s/%s" % (host, org, repo)
59
67
  cmd = git_cmd + ["remote", "set-url", "origin", ssh_url_stb]
60
- print(' '.join(cmd))
68
+ print(" ".join(cmd))
61
69
  subprocess.call(cmd)
62
70
 
63
71
  # Unshallow repository
64
72
  cmd = git_cmd + ["rev-parse", "--is-shallow-repository"]
65
73
  is_shallow = subprocess.check_output(cmd).decode(sys.stdout.encoding).strip().splitlines()[0]
66
- if is_shallow == 'true':
74
+ if is_shallow == "true":
67
75
  if host not in hosts_scanned:
68
76
  ssh_keyscan2known_hosts(host)
69
77
  hosts_scanned.add(host)
70
78
  cmd = git_cmd + ["fetch", "--unshallow"]
71
- print(' '.join(cmd))
79
+ print(" ".join(cmd))
72
80
  subprocess.call(cmd)
73
81
 
74
82
  # Add extra remote if "stb" so add "dev" if "dev" so add "stb"
@@ -76,5 +84,5 @@ def git_set_remote(path=None):
76
84
  new_remote = "dev" if "dev" in new_org else "stb"
77
85
  ssh_url_dev = "git@%s:%s/%s" % (host, new_org, repo)
78
86
  cmd = git_cmd + ["remote", "add", new_remote, ssh_url_dev]
79
- print(' '.join(cmd))
87
+ print(" ".join(cmd))
80
88
  subprocess.call(cmd)