Skip to content

Commit

Permalink
Merge pull request #228 from macadmins/development
Browse files Browse the repository at this point in the history
Merge v1.1.0 development into main
  • Loading branch information
erikng committed Aug 26, 2021
2 parents f9022bd + 7fdb76b commit ca585cb
Show file tree
Hide file tree
Showing 66 changed files with 1,910 additions and 1,288 deletions.
25 changes: 18 additions & 7 deletions .github/workflows/build_nudge_prerelease.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
name: Build signed Nudge and upload signed package (prerelease)

env:
NOTARY_APP_PASSWORD: ${{ secrets.NOTARY_APP_PASSWORD }}

on:
push:
branches:
Expand All @@ -11,18 +14,17 @@ on:

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand All @@ -33,13 +35,19 @@ jobs:
p12-password: ${{ secrets.PKG_CERTIFICATES_P12_PASSWORD }}

- name: Run build package script
run: ./build_nudge.zsh "CREATE_PKG"
run: ./build_nudge.zsh "CREATE_PKG" "$NOTARY_APP_PASSWORD"

- name: get environment variables
id: get_env_var
run: |
echo "NUDGE_VERSION=$(/bin/cat ./build_info.txt)" >> $GITHUB_ENV
- name: Generate changelog
id: changelog
uses: metcalfc/changelog-generator@e5306b306fa2e34f05258789e0e5c526c1bd4352 # v1.0.0
with:
myToken: ${{ secrets.GITHUB_TOKEN }}

- name: Create Pre-Release
id: create_pre_release
uses: actions/create-release@v1
Expand All @@ -51,13 +59,16 @@ jobs:
body: |
# Notes
This is a pre-release version of Nudge created by GitHub Actions.
Nudge.app has been signed application as well as the package.
Nudge.app has been signed and notarized. The package has been signed, notarized and stapled.
By default Nudge looks for a `com.github.macadmins.Nudge.json` file located in `/Library/Preferences`. If you would like to use an alternative path, please read the [README](https://github.com/macadmins/nudge/blob/main/README.md) or the [WIKI](https://github.com/macadmins/nudge/wiki)
## About the LaunchAgent
This is a basic launch agent that opens Nudge twice an hour, every 30 minutes.
If you would like to reduce the amount of times Nudge launches per day, it is recommended to create your own LaunchAgent.
# Changes
${{ steps.changelog.outputs.changelog }}
draft: false
prerelease: true

Expand Down
24 changes: 18 additions & 6 deletions .github/workflows/build_nudge_prerelease_manual.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
name: Manual build signed Nudge and upload signed package (prerelease)

env:
NOTARY_APP_PASSWORD: ${{ secrets.NOTARY_APP_PASSWORD }}

on: [workflow_dispatch]

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand All @@ -26,13 +29,19 @@ jobs:
p12-password: ${{ secrets.PKG_CERTIFICATES_P12_PASSWORD }}

- name: Run build package script
run: ./build_nudge.zsh "CREATE_PKG"
run: ./build_nudge.zsh "CREATE_PKG" "$NOTARY_APP_PASSWORD"

- name: get environment variables
id: get_env_var
run: |
echo "NUDGE_VERSION=$(/bin/cat ./build_info.txt)" >> $GITHUB_ENV
- name: Generate changelog
id: changelog
uses: metcalfc/changelog-generator@e5306b306fa2e34f05258789e0e5c526c1bd4352 # v1.0.0
with:
myToken: ${{ secrets.GITHUB_TOKEN }}

- name: Create Pre-Release
id: create_pre_release
uses: actions/create-release@v1
Expand All @@ -44,13 +53,16 @@ jobs:
body: |
# Notes
This is a pre-release version of Nudge created by GitHub Actions.
Nudge.app has been signed application as well as the package.
Nudge.app has been signed and notarized. The package has been signed, notarized and stapled.
By default Nudge looks for a `com.github.macadmins.Nudge.json` file located in `/Library/Preferences`. If you would like to use an alternative path, please read the [README](https://github.com/macadmins/nudge/blob/main/README.md) or the [WIKI](https://github.com/macadmins/nudge/wiki)
## About the LaunchAgent
This is a basic launch agent that opens Nudge twice an hour, every 30 minutes.
If you would like to reduce the amount of times Nudge launches per day, it is recommended to create your own LaunchAgent.
# Changes
${{ steps.changelog.outputs.changelog }}
draft: false
prerelease: true

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build_nudge_prerelease_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ on:

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand Down
24 changes: 18 additions & 6 deletions .github/workflows/build_nudge_release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
name: Build signed Nudge and upload signed package

env:
NOTARY_APP_PASSWORD: ${{ secrets.NOTARY_APP_PASSWORD }}

on:
push:
branches:
Expand All @@ -11,18 +14,18 @@ on:

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand All @@ -33,13 +36,19 @@ jobs:
p12-password: ${{ secrets.PKG_CERTIFICATES_P12_PASSWORD }}

- name: Run build package script
run: ./build_nudge.zsh "CREATE_PKG"
run: ./build_nudge.zsh "CREATE_PKG" "$NOTARY_APP_PASSWORD"

- name: get environment variables
id: get_env_var
run: |
echo "NUDGE_VERSION=$(/bin/cat ./build_info.txt)" >> $GITHUB_ENV
- name: Generate changelog
id: changelog
uses: metcalfc/changelog-generator@e5306b306fa2e34f05258789e0e5c526c1bd4352 # v1.0.0
with:
myToken: ${{ secrets.GITHUB_TOKEN }}

- name: Create Release
id: create_release
uses: actions/create-release@v1
Expand All @@ -51,13 +60,16 @@ jobs:
body: |
# Notes
This is a version of Nudge created by GitHub Actions.
Nudge.app has been signed application as well as the package.
Nudge.app has been signed and notarized. The package has been signed, notarized and stapled.
By default Nudge looks for a `com.github.macadmins.Nudge.json` file located in `/Library/Preferences`. If you would like to use an alternative path, please read the [README](https://github.com/macadmins/nudge/blob/main/README.md) or the [WIKI](https://github.com/macadmins/nudge/wiki)
## About the LaunchAgent
This is a basic launch agent that opens Nudge twice an hour, every 30 minutes.
If you would like to reduce the amount of times Nudge launches per day, it is recommended to create your own LaunchAgent.
# Changes
${{ steps.changelog.outputs.changelog }}
draft: false
prerelease: false

Expand Down
24 changes: 18 additions & 6 deletions .github/workflows/build_nudge_release_manual.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
name: Manual build signed Nudge and upload signed package

env:
NOTARY_APP_PASSWORD: ${{ secrets.NOTARY_APP_PASSWORD }}

on: [workflow_dispatch]

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand All @@ -26,13 +29,19 @@ jobs:
p12-password: ${{ secrets.PKG_CERTIFICATES_P12_PASSWORD }}

- name: Run build package script
run: ./build_nudge.zsh "CREATE_PKG"
run: ./build_nudge.zsh "CREATE_PKG" "$NOTARY_APP_PASSWORD"

- name: get environment variables
id: get_env_var
run: |
echo "NUDGE_VERSION=$(/bin/cat ./build_info.txt)" >> $GITHUB_ENV
- name: Generate changelog
id: changelog
uses: metcalfc/changelog-generator@e5306b306fa2e34f05258789e0e5c526c1bd4352 # v1.0.0
with:
myToken: ${{ secrets.GITHUB_TOKEN }}

- name: Create Release
id: create_release
uses: actions/create-release@v1
Expand All @@ -44,13 +53,16 @@ jobs:
body: |
# Notes
This is a version of Nudge created by GitHub Actions.
Nudge.app has been signed application as well as the package.
Nudge.app has been signed and notarized. The package has been signed, notarized and stapled.
By default Nudge looks for a `com.github.macadmins.Nudge.json` file located in `/Library/Preferences`. If you would like to use an alternative path, please read the [README](https://github.com/macadmins/nudge/blob/main/README.md) or the [WIKI](https://github.com/macadmins/nudge/wiki)
## About the LaunchAgent
This is a basic launch agent that opens Nudge twice an hour, every 30 minutes.
If you would like to reduce the amount of times Nudge launches per day, it is recommended to create your own LaunchAgent.
# Changes
${{ steps.changelog.outputs.changelog }}
draft: false
prerelease: false

Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/build_nudge_release_pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,18 @@ on:

jobs:
build:
runs-on: macos-11.0
runs-on: macos-11

steps:
- name: Checkout python repo
- name: Checkout nudge repo
uses: actions/checkout@v2

- name: Install Apple Xcode certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
with:
keychain-password: ${{ secrets.KEYCHAIN_PASSWORD }}
p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
p12-file-base64: ${{ secrets.APP_CERTIFICATES_P12 }}
p12-password: ${{ secrets.APP_CERTIFICATES_P12_PASSWORD }}

- name: Install Apple Installer certificates
uses: apple-actions/import-codesign-certs@253ddeeac23f2bdad1646faac5c8c2832e800071
Expand Down
21 changes: 13 additions & 8 deletions Example Assets/com.github.macadmins.Nudge.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
{
"optionalFeatures": {
"acceptableApplicationBundleIDs": [
"us.zoom.xos"
],
"aggressiveUserExperience": true,
"asyncronousSoftwareUpdate": true,
"attemptToFetchMajorUpgrade": true,
"enforceMinorUpdates": true
Expand All @@ -26,17 +30,13 @@
}
],
"majorUpgradeAppPath": "/Applications/Install macOS Big Sur.app",
"requiredInstallationDate": "2021-02-28T00:00:00Z",
"requiredMinimumOSVersion": "11.2.1",
"targetedOSVersions": [
"11.0",
"11.0.1",
"11.1",
"11.2"
]
"requiredInstallationDate": "2021-08-28T00:00:00Z",
"requiredMinimumOSVersion": "11.5.2",
"targetedOSVersionsRule": "default"
}
],
"userExperience": {
"allowUserQuitDeferrals": true,
"allowedDeferrals": 1000000,
"allowedDeferralsUntilForcedSecondaryQuitButton": 14,
"approachingRefreshCycle": 6000,
Expand All @@ -51,25 +51,30 @@
"randomDelay": false
},
"userInterface": {
"actionButtonPath": "munki://updates",
"fallbackLanguage": "en",
"forceFallbackLanguage": false,
"forceScreenShotIcon": false,
"iconDarkPath": "/somewhere/logoDark.png",
"iconLightPath": "/somewhere/logoLight.png",
"screenShotDarkPath": "/somewhere/screenShotDark.png",
"screenShotLightPath": "/somewhere/screenShotLight.png",
"showDeferralCount": true,
"simpleMode": false,
"singleQuitButton": false,
"updateElements": [
{
"_language": "en",
"actionButtonText": "Update Device",
"customDeferralButtonText": "Custom",
"informationButtonText": "More Info",
"mainContentHeader": "Your device will restart during this update",
"mainContentNote": "Important Notes",
"mainContentSubHeader": "Updates can take around 30 minutes to complete",
"mainContentText": "A fully up-to-date device is required to ensure that IT can accurately protect your device.\n\nIf you do not update your device, you may lose access to some items necessary for your day-to-day tasks.\n\nTo begin the update, simply click on the Update Device button and follow the provided steps.",
"mainHeader": "Your device requires a security update",
"oneDayDeferralButtonText": "One Day",
"oneHourDeferralButtonText": "One Hour",
"primaryQuitButtonText": "Later",
"secondaryQuitButtonText": "I understand",
"subHeader": "A friendly reminder from your local IT team"
Expand Down
Loading

0 comments on commit ca585cb

Please sign in to comment.