Merge pull request #2393 from KrauseFx/patch-1

Added fastlane configuration files
This commit is contained in:
Arfon Smith
2015-05-13 08:45:23 -05:00
5 changed files with 212 additions and 0 deletions

View File

@@ -2833,6 +2833,8 @@ Ruby:
- Appraisals
- Berksfile
- Buildfile
- Deliverfile
- Fastfile
- Gemfile
- Gemfile.lock
- Guardfile
@@ -2840,6 +2842,7 @@ Ruby:
- Mavenfile
- Podfile
- Puppetfile
- Snapfile
- Thorfile
- Vagrantfile
- buildfile

View File

@@ -0,0 +1,50 @@
require 'open-uri'
framework_version = JSON.parse(open(url).read)
# The URL below is password protected
apps = JSON.parse(open(url).read)
app_id = Dir.pwd.split("/")[-2].to_i
app = apps[app_id.to_s]
# The app identifier is required
app_identifier "net.sunapps.#{app_id}"
version framework_version['version_number']
title(
'de-DE' => app["fullName"]
)
description(
'de-DE' => app["description"]["de"]
)
changelog(
'de-DE' => framework_version["public_description"]["de"]
)
keywords(
'de-DE' => app["keywords"]["de"].split(",")
)
app_icon "../Submission/AppIconFull.png"
price_tier 0 # free app
primary_category "Reference"
secondary_category "Business"
automatic_release true
ratings_config_path "./ratings_config.json"
app_review_information({
first_name: "Felix",
phone_number: "My Phone Number",
demo_user: "",
demo_password: "",
notes: ""
})

View File

@@ -0,0 +1,115 @@
# Customise this file, documentation can be found here:
# https://github.com/KrauseFx/fastlane/tree/master/docs
$:.unshift File.dirname(__FILE__)
require 'lib/utils.rb'
fastlane_version "1.0.0"
default_platform :ios
platform :ios do
before_all do
ENV['DELIVER_WHAT_TO_TEST'] = git_commit_log
ensure_git_status_clean
end
desc "Runs linting (and eventually static analysis)"
lane :analyze do
return if test_disabled?
make 'lint'
end
desc "Runs all the unit tests."
lane :test do
return if test_disabled?
# TODO: lint & test JS code
xctest(
scheme: 'Wikipedia',
destination: "platform=iOS Simulator,name=iPhone 6,OS=8.3",
reports: [
{
report: "html",
output: "build/reports/unit-tests.html"
},
{
report: "junit",
output: "build/reports/unit-tests.xml"
}
],
clean: nil
)
end
desc "Bump the version, and submit a new **Wikipedia Alpha** Build to Apple TestFlight"
lane :alpha do
# snapshot
sigh
increment_build_number
# uncomment when CI is able to push tags
if ENV['WMF_BUMP']
commit_version_bump
plist_version = get_version_short_string File.expand_path(File.join(ENV['PWD'], 'Wikipedia/Wikipedia-Info.plist'))
# tag must be added after the version bump is committed
add_git_tag(tag: "#{plist_version}.#{Actions.lane_context[Actions::SharedValues::BUILD_NUMBER]}")
end
ipa(
configuration: "Alpha",
scheme: "Wikipedia Alpha",
)
hockey(
notes: '',
notify: '0', # Means do not notify
status: '1', # Means do not make available for download
)
deliver skip_deploy: true, beta: true
# uncomment when CI is able to push tags
if ENV['WMF_BUMP']
# only push after everything else has succeeded
push_to_git_remote
end
end
desc "Submit a new **Wikipedia Beta** build to Apple TestFlight"
lane :beta do
# snapshot
sigh
ipa(
configuration: "Beta",
scheme: "Wikipedia Beta",
)
hockey(
notes: '',
notify: '0', # Means do not notify
status: '1', # Means do not make available for download
)
deliver skip_deploy: true, beta: true
end
desc "Deploy a new version to the App Store"
lane :store do
# snapshot
sigh
ipa(
configuration: "Wikipedia",
scheme: "Wikipedia",
)
hockey(
notes: '',
notify: '0', # Means do not notify
status: '1', # Means do not make available for download
)
deliver skip_deploy: true, force: true
end
after_all do |lane|
end
error do |lane, exception|
end
end

View File

@@ -0,0 +1,18 @@
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, :deployment_target => '6.0'
inhibit_all_warnings!
xcodeproj 'Wikipedia'
pod 'AFNetworking/NSURLConnection', '~> 2.5'
pod 'hpple', '~> 0.2'
pod 'blockskit/Core', '~> 2.2'
pod 'Masonry', '~> 0.6'
pod 'HockeySDK', '3.6.2'
target 'WikipediaUnitTests', :exclusive => false do
pod 'OCMockito', '~> 1.4'
pod 'OCHamcrest', '~> 4.1'
end

View File

@@ -0,0 +1,26 @@
# Download the latest screenshot information from the CMS
app_id = Dir.pwd.split("/")[-2].to_i
File.write("./screenshots.json", open("https://...amazonaws.com/1.0/#{app_id}/....json").read) rescue nil
# A list of devices you want to take the screenshots from
devices([
"iPhone 6",
"iPhone 6 Plus",
"iPhone 5",
"iPhone 4s"
])
languages([
'de-DE'
])
# Where should the resulting screenshots be stored?
screenshots_path "./screenshots"
# JavaScript UIAutomation file
js_file './snapshot.js'
# The name of the project's scheme
scheme 'Release'