Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(818)

Side by Side Diff: build/write_build_date_header.py

Issue 1862503002: Fix regression in 1c9b02233631b0ba9b096d79bf5b8d71a370dbb0. (Closed) Base URL: https://chromium.googlesource.com/a/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright (c) 2016 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2016 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 """Writes a file that contains a define that approximates the build date. 5 """Writes a file that contains a define that approximates the build date.
6 6
7 build_type impacts the timestamp generated: 7 build_type impacts the timestamp generated:
8 - default: the build date is set to the most recent first Sunday of a month at 8 - default: the build date is set to the most recent first Sunday of a month at
9 5:00am. The reason is that it is a time where invalidating the build cache 9 5:00am. The reason is that it is a time where invalidating the build cache
10 shouldn't have major reprecussions (due to lower load). 10 shouldn't have major reprecussions (due to lower load).
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 if args.build_date_override: 87 if args.build_date_override:
88 # Format is expected to be "Mmm DD YYYY HH:MM:SS". 88 # Format is expected to be "Mmm DD YYYY HH:MM:SS".
89 build_date = args.build_date_override 89 build_date = args.build_date_override
90 else: 90 else:
91 now = datetime.datetime.utcnow() 91 now = datetime.datetime.utcnow()
92 if now.hour < 5: 92 if now.hour < 5:
93 # The time is locked at 5:00 am in UTC to cause the build cache 93 # The time is locked at 5:00 am in UTC to cause the build cache
94 # invalidation to not happen exactly at midnight. Use the same calculation 94 # invalidation to not happen exactly at midnight. Use the same calculation
95 # as the day before. 95 # as the day before.
96 # See //base/build_time.cc. 96 # See //base/build_time.cc.
97 now = now - datetime.timedelta(day=1) 97 now = now - datetime.timedelta(days=1)
98 now = datetime.datetime(now.year, now.month, now.day, 5, 0, 0) 98 now = datetime.datetime(now.year, now.month, now.day, 5, 0, 0)
99 build_date = GetBuildDate(args.build_type, now) 99 build_date = GetBuildDate(args.build_type, now)
100 100
101 output = ('// Generated by //build/write_build_date_header.py\n' 101 output = ('// Generated by //build/write_build_date_header.py\n'
102 '#ifndef BUILD_DATE\n' 102 '#ifndef BUILD_DATE\n'
103 '#define BUILD_DATE "{}"\n' 103 '#define BUILD_DATE "{}"\n'
104 '#endif // BUILD_DATE\n'.format(build_date)) 104 '#endif // BUILD_DATE\n'.format(build_date))
105 105
106 current_contents = '' 106 current_contents = ''
107 if os.path.isfile(args.output_file): 107 if os.path.isfile(args.output_file):
108 with open(args.output_file, 'r') as current_file: 108 with open(args.output_file, 'r') as current_file:
109 current_contents = current_file.read() 109 current_contents = current_file.read()
110 110
111 if current_contents != output: 111 if current_contents != output:
112 with open(args.output_file, 'w') as output_file: 112 with open(args.output_file, 'w') as output_file:
113 output_file.write(output) 113 output_file.write(output)
114 return 0 114 return 0
115 115
116 116
117 if __name__ == '__main__': 117 if __name__ == '__main__':
118 sys.exit(main()) 118 sys.exit(main())
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698