Repository navigation
Expand file tree
/
Copy pathMakefile
More file actions
90 lines (64 loc) · 2.84 KB
/
Copy pathMakefile
File metadata and controls
90 lines (64 loc) · 2.84 KB
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
89
90
.PHONY: clean compile stop checkFormat format api dryRelease release testReport test testJava generateLintBaseLine checkRelease updateLocks
clean:
./gradlew clean
compile:
./gradlew build :posthog-android-gradle-plugin:build
# We stop gradle at the end to make sure the cache folders
# don't contain any lock files and are free to be cached.
stop:
./gradlew --stop
checkFormat:
./gradlew spotlessCheck
format:
./gradlew spotlessApply
api:
./gradlew apiDump
dryRelease:
./gradlew publishToMavenLocal
dryReleaseCore:
./gradlew :posthog:publishToMavenLocal
dryReleaseAndroid:
./gradlew :posthog-android:publishToMavenLocal
dryReleaseSurveysCompose:
./gradlew :posthog-android-surveys-compose:publishToMavenLocal
dryReleaseServer:
./gradlew :posthog-server:publishToMavenLocal
dryReleaseAndroidPlugin:
./gradlew :posthog-android-gradle-plugin:publishToMavenLocal
release:
./gradlew publishToSonatype closeAndReleaseSonatypeStagingRepository
releaseCore:
./gradlew :posthog:publishToSonatype closeAndReleaseSonatypeStagingRepository
releaseAndroid:
./gradlew :posthog-android:publishToSonatype closeAndReleaseSonatypeStagingRepository
releaseSurveysCompose:
./gradlew :posthog-android-surveys-compose:publishToSonatype closeAndReleaseSonatypeStagingRepository
releaseServer:
./gradlew :posthog-server:publishToSonatype closeAndReleaseSonatypeStagingRepository
releaseAndroidPlugin:
./gradlew :posthog-android-gradle-plugin:publishToSonatype :posthog-android-gradle-plugin:closeAndReleaseSonatypeStagingRepository
testReport:
./gradlew koverHtmlReport
# Include debug-only Compose interactions even when invoked in CI.
test:
./gradlew -PenableDebugTests=true test :posthog-android:testWithoutCompose :posthog-android-gradle-plugin:test :posthog-android-gradle-plugin:functionalTest
# compile already runs the tests (tests only java)
testJava:
./gradlew :posthog:test
generateLintBaseLine:
rm -f posthog-android/lint-baseline.xml
./gradlew lintDebug -Dlint.baselines.continue=true
# Verify release tasks succeed and committed dependency locks are complete
checkRelease:
CI=false ./gradlew publishToMavenLocal :posthog-android-gradle-plugin:publishToMavenLocal --write-locks
git diff --exit-code -- ':(glob)**/gradle.lockfile'
@test -z "$$(git status --porcelain --untracked-files=all -- ':(glob)**/gradle.lockfile')" || \
(git status --short --untracked-files=all -- ':(glob)**/gradle.lockfile'; exit 1)
# Regenerate gradle.lockfile for all build and publishing configurations
updateLocks:
./gradlew build :posthog-android-gradle-plugin:build --write-locks
CI=false ./gradlew publishToMavenLocal :posthog-android-gradle-plugin:publishToMavenLocal --write-locks
.PHONY: testSurveyUI
# Compose interaction tests require the debug variant, which CI otherwise skips.
testSurveyUI:
./gradlew -PenableDebugTests=true :posthog-android-surveys-compose:testDebugUnitTest