Skip to content

Commit

Permalink
Merge branch 'main' into diego/domain-exclusion-improvements
Browse files Browse the repository at this point in the history
# By Dax the Duck (9) and others
# Via GitHub (6) and Dominik Kapusta (2)
* main: (44 commits)
  Allow using a production subscription with staging VPN environment (#3109)
  Add error pixels for Subscription keychain access errors (#3147)
  onboarding dax dialogs (#3149)
  Logging refactoring phase #2 (#3154)
  Move WireGuard dependency to VPN extensions (#3144)
  Unified feedback form for Privacy Pro (#3058)
  Fix state restoration after app termination (#3127)
  Bump Submodules/privacy-reference-tests from `afb4f61` to `6133e7d` (#3148)
  Bump version to 1.104.0 (250)
  Set marketing version to 1.104.0
  Update embedded files
  Freemium PIR - Add Desktop RMF Attribute (#3146)
  Migrate asana-extract-task-id GHA action to a fastlane plugin (#3145)
  Add missing secrets to publish_dmg_release.yml
  Migrate asana-extract-task-id GHA action to a fastlane plugin (#3145)
  Fix address bar queries when doing math expressions (#3130)
  Bump version to 1.103.0 (249)
  Bump version to 1.103.0 (248)
  Resolving automatic update edge cases (#3142)
  PIR Time-Based Pixel: 24 Opt-Out Request Success Rate (#2942)
  ...

# Conflicts:
#	DuckDuckGo.xcodeproj/project.pbxproj
#	DuckDuckGo.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
#	LocalPackages/DataBrokerProtection/Package.swift
#	LocalPackages/NetworkProtectionMac/Package.swift
#	LocalPackages/SubscriptionUI/Package.swift
  • Loading branch information
samsymons committed Aug 29, 2024
2 parents 5f3fe96 + be5f2c8 commit b370a39
Show file tree
Hide file tree
Showing 350 changed files with 25,163 additions and 8,824 deletions.
8 changes: 3 additions & 5 deletions .github/actions/asana-add-comment/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,8 @@ runs:
steps:
- id: extract-task-id
if: ${{ inputs.task-url }}
uses: ./.github/actions/asana-extract-task-id
with:
task-url: ${{ inputs.task-url }}
access-token: ${{ inputs.access-token }}
shell: bash
run: bundle exec fastlane run asana_extract_task_id task_url:"${{ inputs.task-url }}"

- id: process-template-payload
if: ${{ inputs.template-name }}
Expand Down Expand Up @@ -62,7 +60,7 @@ runs:
shell: bash
env:
ASANA_ACCESS_TOKEN: ${{ inputs.access-token }}
TASK_ID: ${{ inputs.task-id || steps.extract-task-id.outputs.task-id }}
TASK_ID: ${{ inputs.task-id || steps.extract-task-id.outputs.asana_task_id }}
PAYLOAD_BASE64: ${{ steps.process-template-payload.outputs.payload-base64 || steps.process-comment-payload.outputs.payload-base64 }}
run: |
return_code=$(curl -fLSs "https://app.asana.com/api/1.0/tasks/${TASK_ID}/stories" \
Expand Down
23 changes: 0 additions & 23 deletions .github/actions/asana-extract-task-id/action.yml

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -20,20 +20,18 @@ runs:
using: "composite"
steps:
- id: extract-task-id
uses: ./.github/actions/asana-extract-task-id
with:
task-url: ${{ inputs.task-url }}
access-token: ${{ inputs.access-token }}
shell: bash
run: bundle exec fastlane run asana_extract_task_id task_url:"${{ inputs.task-url }}"

- id: extract-assignee-id
uses: ./.github/actions/asana-extract-task-assignee
with:
task-id: ${{ steps.extract-task-id.outputs.task-id }}
task-id: ${{ steps.extract-task-id.outputs.asana_task_id }}
access-token: ${{ inputs.access-token }}

- id: extract-automation-task-id
run: |
task_id="${{ steps.extract-task-id.outputs.task-id }}"
task_id="${{ steps.extract-task-id.outputs.asana_task_id }}"
automation_task_id=$(curl -fLSs "https://app.asana.com/api/1.0/tasks/${task_id}/subtasks?opt_fields=name" \
-H "Authorization: Bearer ${{ inputs.access-token }}" \
| jq -r '.data[] | select(.name=="Automation").gid')
Expand Down
110 changes: 94 additions & 16 deletions .github/actions/install-certs-and-profiles/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,16 @@ inputs:
KEYCHAIN_PASSWORD:
required: true
type: string
REVIEW_PROVISION_PROFILE_BASE64:
APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
RELEASE_PROVISION_PROFILE_BASE64:
CI_PROVISION_PROFILE_BASE64:
required: true
type: string
DBP_AGENT_APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
DBP_AGENT_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
DBP_AGENT_RELEASE_PROVISION_PROFILE_BASE64:
Expand All @@ -22,10 +28,10 @@ inputs:
DBP_AGENT_REVIEW_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_SYSEX_RELEASE_PROVISION_PROFILE_BASE64:
INTEGRATION_TESTS_APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_SYSEX_REVIEW_PROVISION_PROFILE_BASE64:
INTEGRATION_TESTS_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_AGENT_RELEASE_PROVISION_PROFILE_BASE64:
Expand All @@ -34,12 +40,45 @@ inputs:
NETP_AGENT_REVIEW_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_NOTIFICATIONS_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_NOTIFICATIONS_RELEASE_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_NOTIFICATIONS_REVIEW_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_SYSEX_RELEASE_PROVISION_PROFILE_BASE64:
required: true
type: string
NETP_SYSEX_REVIEW_PROVISION_PROFILE_BASE64:
required: true
type: string
RELEASE_PROVISION_PROFILE_BASE64:
required: true
type: string
REVIEW_PROVISION_PROFILE_BASE64:
required: true
type: string
UNIT_TESTS_APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
UNIT_TESTS_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
VPN_APPEX_APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
VPN_APP_APPSTORE_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
VPN_APP_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
VPN_PROXY_EXTENSION_CI_PROVISION_PROFILE_BASE64:
required: true
type: string
access-token:
description: "Asana access token"
required: true
Expand All @@ -59,29 +98,55 @@ runs:
# create variables
CERTIFICATE_PATH=$RUNNER_TEMP/build_certificate.p12
KEYCHAIN_PATH=$RUNNER_TEMP/app-signing.keychain-db
REVIEW_PP_PATH=$RUNNER_TEMP/review_pp.provisionprofile
RELEASE_PP_PATH=$RUNNER_TEMP/release_pp.provisionprofile
APPSTORE_CI_PP_PATH=$RUNNER_TEMP/appstore_ci.provisionprofile
CI_PP_PATH=$RUNNER_TEMP/ci.provisionprofile
DBP_AGENT_APPSTORE_CI_PP_PATH=$RUNNER_TEMP/dbp_agent_appstore_ci.provisionprofile
DBP_AGENT_CI_PP_PATH=$RUNNER_TEMP/dbp_agent_ci.provisionprofile
DBP_AGENT_RELEASE_PP_PATH=$RUNNER_TEMP/dbp_agent_release_pp.provisionprofile
DBP_AGENT_REVIEW_PP_PATH=$RUNNER_TEMP/dbp_agent_review_pp.provisionprofile
NETP_SYSEX_RELEASE_PP_PATH=$RUNNER_TEMP/netp_sysex_release_pp.provisionprofile
NETP_SYSEX_REVIEW_PP_PATH=$RUNNER_TEMP/netp_sysex_review_pp.provisionprofile
INTEGRATION_TESTS_APPSTORE_CI_PP_PATH=$RUNNER_TEMP/integration_tests_appstore_ci.provisionprofile
INTEGRATION_TESTS_CI_PP_PATH=$RUNNER_TEMP/integration_tests_ci.provisionprofile
NETP_AGENT_RELEASE_PP_PATH=$RUNNER_TEMP/netp_agent_release_pp.provisionprofile
NETP_AGENT_REVIEW_PP_PATH=$RUNNER_TEMP/netp_agent_review_pp.provisionprofile
NETP_NOTIFICATIONS_CI_PP_PATH=$RUNNER_TEMP/netp_notifications_ci.provisionprofile
NETP_NOTIFICATIONS_RELEASE_PP_PATH=$RUNNER_TEMP/netp_notifications_release_pp.provisionprofile
NETP_NOTIFICATIONS_REVIEW_PP_PATH=$RUNNER_TEMP/netp_notifications_review_pp.provisionprofile
NETP_SYSEX_RELEASE_PP_PATH=$RUNNER_TEMP/netp_sysex_release_pp.provisionprofile
NETP_SYSEX_REVIEW_PP_PATH=$RUNNER_TEMP/netp_sysex_review_pp.provisionprofile
RELEASE_PP_PATH=$RUNNER_TEMP/release_pp.provisionprofile
REVIEW_PP_PATH=$RUNNER_TEMP/review_pp.provisionprofile
UNIT_TESTS_APPSTORE_CI_PP_PATH=$RUNNER_TEMP/unit_tests_appstore_ci.provisionprofile
UNIT_TESTS_CI_PP_PATH=$RUNNER_TEMP/unit_tests_ci.provisionprofile
VPN_APPEX_APPSTORE_CI_PP_PATH=$RUNNER_TEMP/vpn_appex_appstore_ci.provisionprofile
VPN_APP_APPSTORE_CI_PP_PATH=$RUNNER_TEMP/vpn_app_appstore_ci.provisionprofile
VPN_APP_CI_PP_PATH=$RUNNER_TEMP/vpn_app_ci.provisionprofile
VPN_PROXY_EXTENSION_CI_PP_PATH=$RUNNER_TEMP/vpn_proxy_extension_ci.provisionprofile
# import certificate from secrets
echo -n "${{ inputs.BUILD_CERTIFICATE_BASE64 }}" | base64 --decode -o $CERTIFICATE_PATH
echo -n "${{ inputs.REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $REVIEW_PP_PATH
echo -n "${{ inputs.RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $RELEASE_PP_PATH
echo -n "${{ inputs.APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $APPSTORE_CI_PP_PATH
echo -n "${{ inputs.CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $CI_PP_PATH
echo -n "${{ inputs.DBP_AGENT_APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $DBP_AGENT_APPSTORE_CI_PP_PATH
echo -n "${{ inputs.DBP_AGENT_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $DBP_AGENT_CI_PP_PATH
echo -n "${{ inputs.DBP_AGENT_RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $DBP_AGENT_RELEASE_PP_PATH
echo -n "${{ inputs.DBP_AGENT_REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $DBP_AGENT_REVIEW_PP_PATH
echo -n "${{ inputs.NETP_SYSEX_RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_SYSEX_RELEASE_PP_PATH
echo -n "${{ inputs.NETP_SYSEX_REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_SYSEX_REVIEW_PP_PATH
echo -n "${{ inputs.INTEGRATION_TESTS_APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $INTEGRATION_TESTS_APPSTORE_CI_PP_PATH
echo -n "${{ inputs.INTEGRATION_TESTS_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $INTEGRATION_TESTS_CI_PP_PATH
echo -n "${{ inputs.NETP_AGENT_RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_AGENT_RELEASE_PP_PATH
echo -n "${{ inputs.NETP_AGENT_REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_AGENT_REVIEW_PP_PATH
echo -n "${{ inputs.NETP_NOTIFICATIONS_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_NOTIFICATIONS_CI_PP_PATH
echo -n "${{ inputs.NETP_NOTIFICATIONS_RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_NOTIFICATIONS_RELEASE_PP_PATH
echo -n "${{ inputs.NETP_NOTIFICATIONS_REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_NOTIFICATIONS_REVIEW_PP_PATH
echo -n "${{ inputs.NETP_SYSEX_RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_SYSEX_RELEASE_PP_PATH
echo -n "${{ inputs.NETP_SYSEX_REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $NETP_SYSEX_REVIEW_PP_PATH
echo -n "${{ inputs.RELEASE_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $RELEASE_PP_PATH
echo -n "${{ inputs.REVIEW_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $REVIEW_PP_PATH
echo -n "${{ inputs.UNIT_TESTS_APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $UNIT_TESTS_APPSTORE_CI_PP_PATH
echo -n "${{ inputs.UNIT_TESTS_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $UNIT_TESTS_CI_PP_PATH
echo -n "${{ inputs.VPN_APPEX_APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $VPN_APPEX_APPSTORE_CI_PP_PATH
echo -n "${{ inputs.VPN_APP_APPSTORE_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $VPN_APP_APPSTORE_CI_PP_PATH
echo -n "${{ inputs.VPN_APP_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $VPN_APP_CI_PP_PATH
echo -n "${{ inputs.VPN_PROXY_EXTENSION_CI_PROVISION_PROFILE_BASE64 }}" | base64 --decode -o $VPN_PROXY_EXTENSION_CI_PP_PATH
# create temporary keychain
security create-keychain -p "${{ inputs.KEYCHAIN_PASSWORD }}" $KEYCHAIN_PATH
Expand All @@ -95,15 +160,28 @@ runs:
# apply provisioning profile
mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
cp $REVIEW_PP_PATH \
$RELEASE_PP_PATH \
cp $APPSTORE_CI_PP_PATH \
$CI_PP_PATH \
$DBP_AGENT_APPSTORE_CI_PP_PATH \
$DBP_AGENT_CI_PP_PATH \
$DBP_AGENT_RELEASE_PP_PATH \
$DBP_AGENT_REVIEW_PP_PATH \
$NETP_SYSEX_RELEASE_PP_PATH \
$NETP_SYSEX_REVIEW_PP_PATH \
$INTEGRATION_TESTS_APPSTORE_CI_PP_PATH \
$INTEGRATION_TESTS_CI_PP_PATH \
$NETP_AGENT_RELEASE_PP_PATH \
$NETP_AGENT_REVIEW_PP_PATH \
$NETP_NOTIFICATIONS_CI_PP_PATH \
$NETP_NOTIFICATIONS_RELEASE_PP_PATH \
$NETP_NOTIFICATIONS_REVIEW_PP_PATH \
$NETP_SYSEX_RELEASE_PP_PATH \
$NETP_SYSEX_REVIEW_PP_PATH \
$RELEASE_PP_PATH \
$UNIT_TESTS_APPSTORE_CI_PP_PATH \
$UNIT_TESTS_CI_PP_PATH \
$VPN_APPEX_APPSTORE_CI_PP_PATH \
$VPN_APP_APPSTORE_CI_PP_PATH \
$VPN_APP_CI_PP_PATH \
$VPN_PROXY_EXTENSION_CI_PP_PATH \
$REVIEW_PP_PATH \
~/Library/MobileDevice/Provisioning\ Profiles
shell: bash
6 changes: 3 additions & 3 deletions .github/workflows/build_appstore.yml
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,9 @@ jobs:
submodules: recursive
ref: ${{ env.branch }}

- name: Set up fastlane
run: bundle install

- name: Check if this is an official release build
id: is-official-release
env:
Expand All @@ -102,9 +105,6 @@ jobs:
- name: Select Xcode
run: sudo xcode-select -s /Applications/Xcode_$(<.xcode-version).app/Contents/Developer

- name: Prepare fastlane
run: bundle install

- name: Archive and Upload the App
env:
APPLE_API_KEY_BASE64: ${{ secrets.APPLE_API_KEY_BASE64 }}
Expand Down
Loading

0 comments on commit b370a39

Please sign in to comment.