Skip to content

Instantly share code, notes, and snippets.

@wakwak3125
Last active November 15, 2016 12:50
Show Gist options
  • Save wakwak3125/190134f848d5740c8271916baf7ad529 to your computer and use it in GitHub Desktop.
Save wakwak3125/190134f848d5740c8271916baf7ad529 to your computer and use it in GitHub Desktop.
Script for generate change logs from app/build.gradle.
#!/usr/bin/env ruby
app_version = ''
file_names = []
changelog_contens_ja = []
changelog_contens_en = []
gradle_path = '../app/build.gradle'
# These files are base change log.
changelog_path_ja = '../change_log_ja.txt'
changelog_path_en = '../change_log_en.txt'
# Change log output paths.
output_path_ja = '../metadata/ja-JP/changelogs/'
output_path_en = '../metadata/en-US/changelogs/'
begin
# Create file names.
File.open(gradle_path) do |gradle|
gradle.each_line do |line|
if line.include?('versionCode')
app_version = line.gsub(/[^0-9]/, '').to_s
file_names.push('1' + app_version, '2' + app_version, '3' + app_version, '4' + app_version, '5' + app_version, '6' + app_version)
break
end
end
# Read change log from file and push into array.
File.open(changelog_path_ja) do |file|
file.each_line do |changelog|
changelog_contens_ja.push(changelog)
end
end
# Create change log files for each apk version codes.(Because of I use split apk feature.)
file_names.each do |file_name|
File.open(output_path_ja + file_name + '.txt', 'w') do |output_file|
changelog_contens_ja.each { |s| output_file.puts(s) }
end
end
# Do previous sequences for English change log.
File.open(changelog_path_en) do |file|
file.each_line do |changelog|
changelog_contens_en.push(changelog)
end
end
file_names.each do |file_name|
File.open(output_path_en + file_name + '.txt', 'w') do |output_file|
changelog_contens_en.each { |s| output_file.puts(s) }
end
end
end
puts 'done!'
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment