Skip to content
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

Staging to main for v3.0.0 release #56

Merged
merged 194 commits into from
Jun 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
194 commits
Select commit Hold shift + click to select a range
05bf330
Add gitignore
PravinPK May 15, 2024
a88c344
Code of conduct, copyright and license
PravinPK May 15, 2024
5cc1e3a
update year for copyright
PravinPK May 15, 2024
97bdcaf
Merge pull request #1 from PravinPK/main
PravinPK May 15, 2024
a7db064
GitHub Pull request templates
PravinPK May 15, 2024
4425625
Github actions release scripts
PravinPK May 15, 2024
00121a3
Removing repeated steps
PravinPK May 15, 2024
5e68752
Gradle, Project and test file
PravinPK May 16, 2024
528ca65
update version script now includes core
PravinPK May 16, 2024
4db2926
fix formatting
PravinPK May 16, 2024
e43cb49
Merge pull request #3 from PravinPK/dev-v3.0.0
PravinPK May 16, 2024
a4fb71a
update API name and enable dokkadoc
PravinPK May 16, 2024
9f982ac
Merge pull request #4 from PravinPK/code
PravinPK May 16, 2024
d65fd4b
Adding Circle CI and make files
PravinPK May 16, 2024
0916fff
Adding test app
PravinPK May 16, 2024
1b399ee
fix copy-pasta error
PravinPK May 16, 2024
f8a5c1a
Merge pull request #5 from PravinPK/circleCI
PravinPK May 16, 2024
79e1e94
setup repo with latest push template code
rymorale May 17, 2024
89ca874
move non public classes to "internal" package
rymorale May 17, 2024
5d2aaf7
run formatter
rymorale May 17, 2024
76e505f
fix notificationBuilder > notificationbuilder in makefile
rymorale May 17, 2024
18353fe
update jitpack command
rymorale May 17, 2024
162983e
make NotificationConstructionFailedException public
rymorale May 17, 2024
d32fd4e
run formatter (again)
rymorale May 17, 2024
fea6093
Merge pull request #6 from rymorale/dev-v3.0.0
rymorale May 17, 2024
74a6ae4
post migration cleanup, add support for dark / light mode
rymorale May 20, 2024
ab6d0f0
remove unneeded import
rymorale May 20, 2024
4a317ed
remove unused style
rymorale May 20, 2024
a1ec655
make theme name more descriptive, add comments to colors.xml
rymorale May 21, 2024
a76fe5b
add copyright headers to values xml files
rymorale May 21, 2024
a3768d0
remove colors.xml, use default colors of `Theme.AppCompat.DayNight`
rymorale May 21, 2024
15e03f5
Merge pull request #7 from rymorale/dark-mode-support-and-cleanup
PravinPK May 21, 2024
8cb0a7f
change project name
PravinPK May 21, 2024
eb55237
Add NotificationData class
PravinPK May 22, 2024
00ea441
Update notificationBuilder class to use NotificationData
PravinPK May 22, 2024
b834e54
Actual Notification Data files
PravinPK May 22, 2024
6b836bf
Some property renaming
PravinPK May 22, 2024
2663c32
Simplify the creation of channel
PravinPK May 22, 2024
6e0eefd
single line log statements
PravinPK May 22, 2024
3a0c50f
Use NotificationData to extract AEPPushTemplate payload
PravinPK May 22, 2024
2031a13
Simplify the intent creation
PravinPK May 22, 2024
b06b608
Remove unused intent constants
PravinPK May 22, 2024
4ba22c0
fix formatting
PravinPK May 22, 2024
d1a8a78
Add more documentation
PravinPK May 22, 2024
340db74
set correct intent data
PravinPK May 22, 2024
642a3a8
Rename CreateIntent method
PravinPK May 22, 2024
5d5cf6a
Stop passing fromIntent everywhere, instead be a little smart
PravinPK May 22, 2024
846403c
remove fromIntent completely
PravinPK May 22, 2024
f6e989b
add ProductCatalogNotificationBuilder and layouts
rymorale May 22, 2024
88f066b
Merge remote-tracking branch 'upstream/dev-v3.0.0' into product-catal…
rymorale May 22, 2024
42b1bbb
move catalog intent constants to PushTemplateIntentConstants
rymorale May 22, 2024
79da9c7
edit log statements
PravinPK May 22, 2024
1337b06
Add getRequiredString field
PravinPK May 22, 2024
2fe86bd
Formatting, missed them
PravinPK May 23, 2024
5d1f0fc
add day/night mode support for product catalog notifications
rymorale May 23, 2024
35492a0
Move intent creation to TemplateBuilder class
PravinPK May 23, 2024
0676230
Fix the carousel scroll issue
PravinPK May 24, 2024
b753c05
Merge pull request #8 from PravinPK/dev-v3.0.0
PravinPK May 24, 2024
bebc184
Merge remote-tracking branch 'upstream/dev-v3.0.0' into product-catal…
rymorale May 24, 2024
a800e7e
update ProductCatalogNotificationBuilder with NotificationData refactor
rymorale May 24, 2024
a6d2812
Update Makefile
rymorale May 24, 2024
a7b6ff0
rating push template
spoorthipujariadobe May 24, 2024
169ac12
rename rating template constants
spoorthipujariadobe May 24, 2024
607ec7a
Cleanup NotificationPriority and visibility
PravinPK May 25, 2024
e4bde82
rename classes from Rating-> Product Rating
spoorthipujariadobe May 28, 2024
d29222c
move rating icon population to separate method
spoorthipujariadobe May 28, 2024
0b338c1
add Confirm to string.xml
spoorthipujariadobe May 28, 2024
1fd7772
code review comments
spoorthipujariadobe May 28, 2024
9fad6d2
code review comments part 2
spoorthipujariadobe May 28, 2024
040b6e7
revview updates, run formatter
rymorale May 28, 2024
ba62a06
revert icon download check during image population
spoorthipujariadobe May 28, 2024
8980c63
Remove reference of message data from carousel templates
PravinPK May 28, 2024
cafb37e
tests for NotificationPriority and Visibility enums
PravinPK May 28, 2024
3774a66
Some javadocs
PravinPK May 28, 2024
5a04202
add tag hashcode to rating click intent requestCode
spoorthipujariadobe May 28, 2024
f2f924d
make colorHex parameter optional, cleanup usages
rymorale May 29, 2024
38f5ba3
Merge pull request #11 from spoorthipujariadobe/rating_template
spoorthipujariadobe May 29, 2024
38edd54
Merge remote-tracking branch 'upstream/dev-v3.0.0' into product-catal…
rymorale May 29, 2024
684b214
Merge pull request #10 from rymorale/product-catalog-builder
rymorale May 29, 2024
c13b0f7
Added MockData providers for UTs to use (#9)
navratan-soni May 29, 2024
96c5952
Fixed issues added more fields in Mock Data provider
navratan-soni May 29, 2024
2db7e78
Added AEPPUshtemplateTests
navratan-soni May 29, 2024
3e35962
Added Basic Push templates
navratan-soni May 29, 2024
fe7cfc0
Use PushTemplate's NotificationData instead of intent to fallback to …
PravinPK May 29, 2024
095ce52
formatting
PravinPK May 29, 2024
359e8f0
Remove toString from enums + property initializer back to init methods
PravinPK May 30, 2024
739241b
formatting edits
PravinPK May 30, 2024
b4c024b
removed assertions for other class specific checks, removed usused file
navratan-soni May 30, 2024
a9748c2
Merge pull request #18 from navratan-soni/BasicPushTemplateTests
navratan-soni May 30, 2024
1e474cf
Fix the tests
PravinPK May 30, 2024
3e768ab
Merge pull request #16 from PravinPK/dev-v3.0.0
PravinPK May 30, 2024
bdd660a
Change Visibility enum to hold accurate string values.
PravinPK May 31, 2024
494f86c
Merge pull request #19 from PravinPK/dev-v3.0.0
PravinPK May 31, 2024
7898a39
merge dev branch to timerTemplate
PravinPK May 31, 2024
334f66c
work on feedback comments
PravinPK May 31, 2024
dc3877f
Not keeping expiry time mandatory and stop passing duration and endti…
PravinPK May 31, 2024
271f002
verify exact alarm permission before continuing Timer notification
PravinPK May 31, 2024
adc0548
set correct alarm manager check
PravinPK May 31, 2024
4354fed
formatting
PravinPK May 31, 2024
1da3d0e
Set timer text color
PravinPK May 31, 2024
657c524
make constants for ACC public, add remind later public API
spoorthipujariadobe May 31, 2024
91bce1b
fix texts
spoorthipujariadobe May 31, 2024
479ae34
make PendingIntentUtils internal class again
spoorthipujariadobe Jun 1, 2024
dc4e25a
Use Core's TimerUtils
PravinPK Jun 3, 2024
fc40ee9
Merge pull request #15 from PravinPK/timerTemplate
PravinPK Jun 3, 2024
f5167d4
resolve merge conflicts
spoorthipujariadobe Jun 3, 2024
a57ffc1
Added icon type in Push template
navratan-soni Jun 3, 2024
8dac008
Added data extraction logic for icon push templates
navratan-soni Jun 3, 2024
ce1b610
Added layout and MultiIconNotification Builder
navratan-soni Jun 3, 2024
1900d46
Spotless apply
navratan-soni Jun 3, 2024
e99f148
Merge remote-tracking branch 'upstream/dev-v3.0.0' into FiveIconPushT…
navratan-soni Jun 3, 2024
534c32c
code review comments + common utility method for scheduled notificati…
spoorthipujariadobe Jun 3, 2024
ba96e99
Merge pull request #20 from spoorthipujariadobe/acc_compatibility
spoorthipujariadobe Jun 3, 2024
564c5d9
Added unit tests for Legacy Notification Builder (#14)
PratthamArora Jun 4, 2024
7707763
updated test cases for sticky notification (#24)
PratthamArora Jun 4, 2024
a3b061a
Merge remote-tracking branch 'upstream/dev-v3.0.0' into FiveIconPushT…
navratan-soni Jun 4, 2024
3fc1c0f
Fixed imports after merge
navratan-soni Jun 4, 2024
a4e8aac
Fixed review comments
navratan-soni Jun 4, 2024
30c92b3
Spotless apply
navratan-soni Jun 4, 2024
c6f6a98
Added dynamic "cancel image" tag
navratan-soni Jun 4, 2024
293b4e4
Moved name to const class
navratan-soni Jun 4, 2024
9fff076
MOB-20866: Add unit tests for BasicNotificationBuilder (#17)
ishita-gambhir-adobe Jun 4, 2024
633d79c
Add all notification data, as received from caller extension, to Pend…
spoorthipujariadobe Jun 4, 2024
29400ee
Addressed PR comments
navratan-soni Jun 5, 2024
7e479a9
Spotless apply
navratan-soni Jun 5, 2024
4138a66
Merge pull request #21 from navratan-soni/FiveIconPushTemplate
navratan-soni Jun 5, 2024
79b5f41
Fixed build errors
navratan-soni Jun 5, 2024
8128ebb
Merge pull request #28 from navratan-soni/build_fixes
navratan-soni Jun 5, 2024
dad2500
Fix LegacyNotificationBuilderTest test using IntentData (#27)
spoorthipujariadobe Jun 5, 2024
4ca32eb
Change Default Channel Name + remove repeated keys in PendingIntent e…
spoorthipujariadobe Jun 5, 2024
200a510
Update test app to build notifications
PravinPK Jun 3, 2024
c0bb155
Add five icon template
PravinPK Jun 5, 2024
d1dcc39
Adding five icons to the app
PravinPK Jun 5, 2024
17f35d9
update tracker activity for testApp
PravinPK Jun 5, 2024
e182534
Merge pull request #22 from PravinPK/appUpdate
PravinPK Jun 5, 2024
a68b929
Copy the bundleData while editing the NotifiationData for actions
PravinPK Jun 5, 2024
6f29c2d
Timer Notification support from Android N and above only
PravinPK Jun 5, 2024
82b09a6
better name
PravinPK Jun 5, 2024
6aa048b
Merge pull request #30 from PravinPK/appUpdate
PravinPK Jun 5, 2024
09eb90f
fix zero bezel collapse text crop + filmstrip centre image height cro…
spoorthipujariadobe Jun 5, 2024
e2ee073
change some trace logs to warning/debug (#32)
spoorthipujariadobe Jun 6, 2024
66e8ab9
Added unit tests for AppResourceExtensions (#33)
PratthamArora Jun 7, 2024
d311f02
Added test cases for validating Icons count
navratan-soni Jun 7, 2024
8ab89d2
Added MultiIconTest for error cases
navratan-soni Jun 7, 2024
d956e54
Spotless apply
navratan-soni Jun 7, 2024
2807be7
MOB-21015: Add unit tests for NotificationManagerExtensions (#34)
ishita-gambhir-adobe Jun 10, 2024
0abd0e9
Merge remote-tracking branch 'upstream/dev-v3.0.0' into testcase_mult…
navratan-soni Jun 10, 2024
adc2293
Spotless apply
navratan-soni Jun 10, 2024
49e05ab
Merge pull request #35 from navratan-soni/testcase_multi_icon
navratan-soni Jun 10, 2024
6a2db7d
Fix filmstrip carousel display when images fail to download (#37)
spoorthipujariadobe Jun 11, 2024
9c1d529
[MOB-20955] ManualCarouselNotificationBuilder unit tests added
siddique-adobe Jun 4, 2024
2a3f119
[MOB-20955] ManualCarouselNotificationBuilder unit tests added for fa…
siddique-adobe Jun 5, 2024
25d1901
[MOB-20955] ManualCarouselNotificationBuilder unit tests added for do…
siddique-adobe Jun 5, 2024
ae3761b
[MOB-20955] Tests added for getCarouselIndices method of ManualCarous…
siddique-adobe Jun 10, 2024
168e6f8
[MOB-20955] Tests added for populateFilmstripCarouselImages method of…
siddique-adobe Jun 10, 2024
5e4130d
[MOB-20955] PR comments resolved
siddique-adobe Jun 12, 2024
ab942b1
[MOB-20955] Tests updated as per the latest dev branch changes merged
siddique-adobe Jun 12, 2024
decb32f
Merge pull request #25 from siddique-adobe/MOB-20955
siddique-adobe Jun 13, 2024
036a4d9
move remind later handling to different public class (#40)
spoorthipujariadobe Jun 18, 2024
85dd6f5
add TimerNotificationBuilderTests unit tests
rymorale Jun 18, 2024
4a86989
fix lint error: formatting
rymorale Jun 19, 2024
3d51b2e
added unit tests for AEPPushNotificationBuilder (#39)
PratthamArora Jun 19, 2024
ed77fc1
add more verification to TimerNotificationBuilderTests, fix a couple …
rymorale Jun 19, 2024
073f399
relax time range verification for setChronometer verification
rymorale Jun 19, 2024
b4f7b5b
add NotificationBuilderTests for constructNotificationBuilder and han…
rymorale Jun 19, 2024
1be074d
MOB-20954: Add unit tests for InputBoxNotificationBuilder (#36)
ishita-gambhir-adobe Jun 20, 2024
bf8d1a0
MOB-21188: [Android] Add unit tests for ProductCatalogNotificationBui…
ishita-gambhir-adobe Jun 20, 2024
3dfe28f
[MOB-20956] Adding unit tests for AutoCarouselNotificationBuilder (#41)
siddique-adobe Jun 20, 2024
22922d9
Added unit tests for Zero bezel Notification Builder (#46)
PratthamArora Jun 20, 2024
336d1cb
add private NotificationBuilder tests, more cleanup
rymorale Jun 20, 2024
02f97d4
Merge remote-tracking branch 'upstream/dev-v3.0.0' into notification-…
rymorale Jun 20, 2024
66b7235
restore accidentally removed curly brace
rymorale Jun 20, 2024
7371e09
fix breaks after merging latest main
rymorale Jun 20, 2024
1eaa145
fix lint error
rymorale Jun 20, 2024
0fa16c7
remove handleRemindIntent tests from NotificationBuilderTests
rymorale Jun 20, 2024
53c736e
MOB-20866: Add additional tests for BasicNotificationBuilderTest (#51)
ishita-gambhir-adobe Jun 21, 2024
f216324
MOB-21194: Add unit tests for ProductRatingNotificationBuilder (#47)
ishita-gambhir-adobe Jun 21, 2024
620cf3f
Added Carousel notification test class (#42)
navratan-soni Jun 21, 2024
1df4978
NotificationCompatBuilderExtensions, RemoteViewsExtensionsTest, Pendi…
spoorthipujariadobe Jun 21, 2024
de3277f
RemindLaterHandler tests (#50)
spoorthipujariadobe Jun 21, 2024
61875e4
Merge remote-tracking branch 'upstream/dev-v3.0.0' into timer-templat…
rymorale Jun 21, 2024
9467eb1
Merge remote-tracking branch 'upstream/dev-v3.0.0' into notification-…
rymorale Jun 21, 2024
0ada45c
fix NotificationBuilderTests package
rymorale Jun 21, 2024
2e22060
fix format error
rymorale Jun 21, 2024
7d1941b
Merge pull request #43 from rymorale/timer-template-tests
rymorale Jun 21, 2024
e366eda
Merge pull request #48 from rymorale/notification-builder-tests
rymorale Jun 21, 2024
bfee958
Fixed UI issue when less then 5 images are present
navratan-soni Jun 21, 2024
938fecd
Made space between title and body, added zero bazel notif fix
navratan-soni Jun 21, 2024
d675edf
Change Multi-icon close button action type so it does not open app (#53)
spoorthipujariadobe Jun 21, 2024
53aeae7
Fixed some styling in horizontal catalog
navratan-soni Jun 21, 2024
063e3de
Merge pull request #54 from navratan-soni/ui_fixes
navratan-soni Jun 21, 2024
81484f0
Merge pull request #55 from adobe/dev-v3.0.0
spoorthipujariadobe Jun 21, 2024
b41e15f
Add extras for notification close intent
spoorthipujariadobe Jun 21, 2024
1ad5ce9
Merge pull request #57 from spoorthipujariadobe/staging
rymorale Jun 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
104 changes: 104 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
#
# Copyright 2024 Adobe. All rights reserved.
# This file is licensed to you under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. You may obtain a copy
# of the License at http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under
# the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
# OF ANY KIND, either express or implied. See the License for the specific language
# governing permissions and limitations under the License.
#

version: 2.1
orbs:
# Use the CircleCI Android orb version that supports OpenJDK17 required by AGP 8.2+
android: circleci/[email protected]
codecov: codecov/[email protected]

jobs:
build-and-unit-test:
executor:
name: android/android-docker
resource-class: large
tag: 2024.01.1

steps:
- checkout

- run:
name: Check format
command: make checkformat

- run:
name: Check style
command: make checkstyle

- run:
name: Javadoc
command: make javadoc

- store_artifacts:
path: code/notificationbuilder/build/docs/javadoc

- run:
name: Assemble phone
command: make assemble-phone

- run:
name: Build Jitpack Library
command: make notificationbuilder-publish-maven-local-jitpack

- run:
name: Build Test app
command: make assemble-app

- run:
name: Run Unit tests
command: make unit-test-coverage

- store_test_results:
path: code/notificationbuilder/build/test-results/testPhoneDebugUnitTest

- codecov/upload:
file: code/notificationbuilder/build/reports/coverage/test/phone/debug/report.xml
flags: unit-tests


functional-test:
executor:
name: android/android-machine
resource-class: large
tag: 2024.01.1

steps:
- checkout

- android/create-avd:
avd-name: myavd
install: true
system-image: system-images;android-29;default;x86

- android/start-emulator:
avd-name: myavd
no-window: true
post-emulator-launch-assemble-command: ""
restore-gradle-cache-prefix: v1a

- run:
name: Run Functional tests
command: |
make functional-test-coverage

- codecov/upload:
file: code/core/build/reports/coverage/androidTest/phone/connected/debug/report.xml
flags: functional-tests

- android/save-gradle-cache:
cache-prefix: v1a

workflows:
build:
jobs:
- build-and-unit-test
# - functional-test
52 changes: 52 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Contributing

Thanks for choosing to contribute!

The following are a set of guidelines to follow when contributing to this project.

## Code Of Conduct

This project adheres to the Adobe [code of conduct](../CODE_OF_CONDUCT.md). By participating,
you are expected to uphold this code. Please report unacceptable behavior to
[[email protected]](mailto:[email protected]).

## Have A Question?

Start by filing an issue. The existing committers on this project work to reach
consensus around project direction and issue solutions within issue threads
(when appropriate).

## Contributor License Agreement

All third-party contributions to this project must be accompanied by a signed contributor
license agreement. This gives Adobe permission to redistribute your contributions
as part of the project. [Sign our CLA](http://opensource.adobe.com/cla.html). You
only need to submit an Adobe CLA one time, so if you have submitted one previously,
you are good to go!

## Code Reviews

All submissions should come in the form of pull requests and need to be reviewed
by project committers. Read [GitHub's pull request documentation](https://help.github.com/articles/about-pull-requests/)
for more information on sending pull requests.

Lastly, please follow the [pull request template](PULL_REQUEST_TEMPLATE.md) when
submitting a pull request!

## Style Guide

Code cleanliness and consistency is important. Please review and follow our code
[Style Guide](../Documentation/Contributing/StyleGuide.md) when contributing.

## From Contributor To Committer

We love contributions from our community! If you'd like to go a step beyond contributor
and become a committer with full write access and a say in the project, you must
be invited to the project. The existing committers employ an internal nomination
process that must reach lazy consensus (silence is approval) before invitations
are issued. If you feel you are qualified and want to get more deeply involved,
feel free to reach out to existing committers to have a conversation about that.

## Security Issues

Security issues shouldn't be reported on this issue tracker. Instead, [file an issue to our security experts](https://helpx.adobe.com/security/alertus.html)
16 changes: 16 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<!--- STOP! Before you open an issue please search this repository's issues to see if it has already been reported. This helps reduce duplicate issues from being created. -->
<!--- SECURITY DISCLOSURE: If this is a security disclosure please follow the guidelines in CONTRIBUTING.md. This helps keep folks from accidentally releasing vulnerabilities before the maintainers get a chance to fix the issue. -->

### Expected Behaviour

### Actual Behaviour

### Reproduce Scenario (including but not limited to)

#### Steps to Reproduce

#### Platform and Version

#### Sample Code that illustrates the problem

#### Logs taken while reproducing problem
45 changes: 45 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
<!--- Provide a general summary of your changes in the Title above -->

## Description

<!--- Describe your changes in detail -->

## Related Issue

<!--- This project only accepts pull requests related to open issues -->
<!--- If suggesting a new feature or change, please discuss it in an issue first -->
<!--- If fixing a bug, there should be an issue describing it with steps to reproduce -->
<!--- Please link to the issue here: -->

## Motivation and Context

<!--- Why is this change required? What problem does it solve? -->

## How Has This Been Tested?

<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots (if appropriate):

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->

- [ ] I have signed the [Adobe Open Source CLA](http://opensource.adobe.com/cla.html).
- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have read the **CONTRIBUTING** document.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.
16 changes: 16 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#
# Copyright 2024 Adobe. All rights reserved.
# This file is licensed to you under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. You may obtain a copy
# of the License at http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under
# the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
# OF ANY KIND, either express or implied. See the License for the specific language
# governing permissions and limitations under the License.
#

template: |
## What’s Changed

$CHANGES
82 changes: 82 additions & 0 deletions .github/workflows/maven-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
#
# Copyright 2024 Adobe. All rights reserved.
# This file is licensed to you under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. You may obtain a copy
# of the License at http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under
# the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
# OF ANY KIND, either express or implied. See the License for the specific language
# governing permissions and limitations under the License.
#

name: Publish Release
on:
workflow_dispatch:
inputs:
component:
type: choice
description: UI Component to release
options:
- notificationbuilder

tag:
description: 'tag/version'
required: true

action_tag:
description: 'Create tag? ("no" to skip)'
required: true
default: 'yes'
jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up Java
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- name: Cache Gradle packages
uses: actions/cache@v2
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle

- name: Verify version
run: |
set -eo pipefail
echo Release version: ${{ github.event.inputs.tag }}
(./scripts/version.sh -n ${{ github.event.inputs.component }} -v ${{ github.event.inputs.tag }})

- name: Create GH Release
id: create_release
uses: release-drafter/release-drafter@v5
if: ${{ github.event.inputs.action_tag == 'yes' }}
with:
name: v${{ github.event.inputs.tag }}-${{ github.event.inputs.component }}
tag: v${{ github.event.inputs.tag }}-${{ github.event.inputs.component }}
version: v${{ github.event.inputs.tag }}-${{ github.event.inputs.component }}
publish: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Import GPG key
env:
GPG_SECRET_KEYS: ${{ secrets.GPG_SECRET_KEYS }}
GPG_OWNERTRUST: ${{ secrets.GPG_OWNERTRUST }}
run: |
echo $GPG_SECRET_KEYS | base64 --decode | gpg --import --no-tty --batch --yes
echo $GPG_OWNERTRUST | base64 --decode | gpg --import-ownertrust --no-tty --batch --yes

- name: Publish to Maven Central Repository
run: make ${{ github.event.inputs.component }}-publish
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }}
57 changes: 57 additions & 0 deletions .github/workflows/maven-snapshot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#
# Copyright 2024 Adobe. All rights reserved.
# This file is licensed to you under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. You may obtain a copy
# of the License at http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under
# the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
# OF ANY KIND, either express or implied. See the License for the specific language
# governing permissions and limitations under the License.
#

name: Publish Snapshot
on:
workflow_dispatch:
inputs:
release_notificationbuilder:
required: false
type: boolean
default: false
description: Release Notification Builder

jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up Java
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17

- name: Cache Gradle packages
uses: actions/cache@v2
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: ${{ runner.os }}-gradle

- name: Import GPG key
env:
GPG_SECRET_KEYS: ${{ secrets.GPG_SECRET_KEYS }}
GPG_OWNERTRUST: ${{ secrets.GPG_OWNERTRUST }}
run: |
echo $GPG_SECRET_KEYS | base64 --decode | gpg --import --no-tty --batch --yes
echo $GPG_OWNERTRUST | base64 --decode | gpg --import-ownertrust --no-tty --batch --yes

- name: Publish NotificationBuilder to Maven Snapshot Repository
if: ${{ inputs.release_notificationbuilder }}
run: make notificationbuilder-publish-snapshot
env:
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
GPG_KEY_ID: ${{ secrets.GPG_KEY_ID }}
Loading
Loading