gecko-dev/tools/moztreedocs/package.py
Ethan Glasser-Camp 0549c56796 Bug 1606026: move tools/docs code to tools/moztreedocs r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D58337

--HG--
rename : tools/docs/Pipfile => tools/moztreedocs/Pipfile
rename : tools/docs/Pipfile.lock => tools/moztreedocs/Pipfile.lock
rename : tools/docs/moztreedocs/__init__.py => tools/moztreedocs/__init__.py
rename : tools/docs/_static/custom_theme.css => tools/moztreedocs/_static/custom_theme.css
rename : tools/docs/mach_commands.py => tools/moztreedocs/mach_commands.py
rename : tools/docs/moztreedocs/package.py => tools/moztreedocs/package.py
rename : tools/docs/moztreedocs/upload.py => tools/moztreedocs/upload.py
extra : moz-landing-system : lando
2020-01-06 16:29:21 +00:00

31 lines
1.0 KiB
Python

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, # You can obtain one at http://mozilla.org/MPL/2.0/.
from __future__ import absolute_import, unicode_literals
import os
from mozpack.archive import create_tar_gz_from_files
from mozpack.files import FileFinder
def distribution_files(root):
"""Find all files suitable for distributing.
Given the path to generated Sphinx documentation, returns an iterable
of (path, BaseFile) for files that should be archived, uploaded, etc.
Paths are relative to given root directory.
"""
finder = FileFinder(root, ignore=('_staging', '_venv'))
return finder.find('**')
def create_tarball(filename, root):
"""Create a tar.gz archive of docs in a directory."""
files = dict(distribution_files(root))
with open(filename, 'wb') as fh:
create_tar_gz_from_files(fh, files, filename=os.path.basename(filename),
compresslevel=6)