6 See https://reproducible-builds.org/ for why this is good |
6 See https://reproducible-builds.org/ for why this is good |
7 and https://reproducible-builds.org/specs/source-date-epoch/ |
7 and https://reproducible-builds.org/specs/source-date-epoch/ |
8 for the definition of this variable. |
8 for the definition of this variable. |
9 |
9 |
10 diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py |
10 diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py |
11 index 6f72697..d4cca96 100644 |
|
12 --- a/python/mozbuild/mozbuild/action/langpack_manifest.py |
11 --- a/python/mozbuild/mozbuild/action/langpack_manifest.py |
13 +++ b/python/mozbuild/mozbuild/action/langpack_manifest.py |
12 +++ b/python/mozbuild/mozbuild/action/langpack_manifest.py |
14 @@ -16,6 +16,7 @@ import os |
13 @@ -11,16 +11,17 @@ |
|
14 from __future__ import absolute_import, print_function |
|
15 |
|
16 import argparse |
|
17 import sys |
|
18 import os |
15 import json |
19 import json |
16 import io |
20 import io |
17 import datetime |
21 import datetime |
18 +import time |
22 +import time |
19 import requests |
23 import requests |
20 import mozversioncontrol |
24 import mozversioncontrol |
21 import mozpack.path as mozpath |
25 import mozpack.path as mozpath |
22 @@ -100,7 +101,7 @@ def get_timestamp_for_locale(path): |
26 from mozpack.chrome.manifest import ( |
|
27 Manifest, |
|
28 ManifestLocale, |
|
29 parse_manifest, |
|
30 ) |
|
31 @@ -94,17 +95,17 @@ def get_dt_from_hg(path): |
|
32 # ts == "20170914215617" |
|
33 ### |
|
34 def get_timestamp_for_locale(path): |
|
35 dt = None |
|
36 if os.path.isdir(os.path.join(path, '.hg')): |
23 dt = get_dt_from_hg(path) |
37 dt = get_dt_from_hg(path) |
24 |
38 |
25 if dt is None: |
39 if dt is None: |
26 - dt = datetime.datetime.utcnow() |
40 - dt = datetime.datetime.utcnow() |
27 + dt = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))) |
41 + dt = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))) |
28 |
42 |
29 dt = dt.replace(microsecond=0) |
43 dt = dt.replace(microsecond=0) |
30 return dt.strftime("%Y%m%d%H%M%S") |
44 return dt.strftime("%Y%m%d%H%M%S") |
|
45 |
|
46 |
|
47 ### |
|
48 # Parses multiple defines files into a single key-value pair object. |
|
49 # |