-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use convention plugins instead of script plugins #87
Conversation
@@ -46,8 +65,6 @@ jobs: | |||
--url 'https://deploygate.com/api/users/${{ secrets.SHARED_DEPLOYGATE_APP_OWNER_NAME_FOR_PUBLIC_REPO }}/apps' | \ | |||
jq -r '"\(.results.package_name) \(.results.distribution.url)"' | |||
done < <(find ./sample/build/outputs/bundle -name "*.aab") | |||
- name: Check javadocs | |||
run: ./gradlew sdk:generateJavadocForReleasePublication sdkMock:generateJavadocForReleasePublication |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same verifications will be done in the build-sdk
job above.
android.useAndroidX=true | ||
android.disableAutomaticComponentCreation=true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Default from AGP8. Currently, it's 7.
abortOnError = false | ||
} | ||
|
||
publishing { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New DSL allows us to remove Javadoc related task declarations!
readonly artifact_id="$(jq -r '.component.module' "${module_name}/build/publications/release/module.json")" | ||
readonly version="$(jq -r '.component.version' "${module_name}/build/publications/release/module.json")" | ||
|
||
cat<<EOF > "${tmp_dir}/expected.txt" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Check if all artifacts, which are javadoc, sources, and runtime, exist.
import org.gradle.kotlin.dsl.create | ||
import org.gradle.kotlin.dsl.dependencies | ||
|
||
class SdkPlugin : Plugin<Project> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
from sdk.build.gradle
import org.gradle.plugins.signing.SigningExtension | ||
import java.util.Locale | ||
|
||
class MavenPublishPlugin : Plugin<Project> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
from publishing.build.gradle
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks~ |
ref: #86 (but not close)
I'm planning to create a code-generation tool as a Gradle plugin, which should be robust for future updates of AGP and/or Gradle. I'm expecting the implementation of the code-generation tool would be so huge, so we need readability and maintainability of the tool's code. However, script plugins are not so readable for huge codebase and it's not unrealistic to create a new repository to maintain plugins for this repo. That's why we need convention plugins.