summaryrefslogtreecommitdiff
path: root/fastlane/Fastfile
blob: a0e259305f73e785b056170302fb18ecd404cb59 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#
# For a list of all available plugins, check out
#
#     https://docs.fastlane.tools/plugins/available-plugins
#

# Uncomment the line if you want fastlane to automatically update itself
# update_fastlane

default_platform(:android)

platform :android do
  desc "Runs all the tests"
  lane :test do
    gradle(task: "test")
  end

   desc "Build debug and test APK for screenshots"
   lane :build_bitmask_for_screengrab do
      gradle(
        task: 'clean'
      )
      gradle(
        task: 'assemble',
        build_type: 'Debug',
        flavor: 'NormalProductionFat'
      )
      gradle(
        task: 'assemble',
        build_type: 'DebugAndroidTest',
        flavor: 'NormalProductionFat'
      )
  end

     desc "Build debug and test APK for screenshots"
     lane :build_custom_for_screengrab do
        gradle(
          task: 'clean'
        )
        gradle(
          task: 'assemble',
          build_type: 'Debug',
          flavor: 'CustomProductionFat'
        )
        gradle(
          task: 'assemble',
          build_type: 'DebugAndroidTest',
          flavor: 'CustomProductionFat'
        )
    end

  lane :bitmask_screenshots do
    # Prepare builds for Automatic UI Tests
    build_bitmask_for_screengrab
    capture_android_screenshots
    frameit(white: true)
    # deliver
  end

   lane :custom_build_screenshots do
     # Prepare builds for Automatic UI Tests
     build_custom_for_screengrab
     capture_android_screenshots
     frameit(white: true)
     # deliver
   end

  desc "Submit a new Beta Build to Crashlytics Beta"
  lane :beta do
    gradle(task: "clean assembleRelease")
    crashlytics
  
    # sh "your_script.sh"
    # You can also use other beta testing services here
  end

  desc "Deploy a new version to the Google Play"
  lane :deploy do
    gradle(task: "clean assembleRelease")
    upload_to_play_store
  end
end