diff --git a/README.md b/README.md index ae5f46f9e8..b1dfcab2c0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,14 @@ -# Installation Link +# Installation Links -https://login.salesforce.com/packaging/installPackage.apexp?p0=04t5f00000074P3 +Production Package Install: +https://login.salesforce.com/packaging/installPackage.apexp?p0=04t5f000000n8RNAAY + +Update with `sfdx force:package1:version:list --json -u mbianco+stripeconnector@stripe.com | jq -r '.result[-1].MetadataPackageVersionId'` + +QA Package Install: +https://test.salesforce.com/packaging/installPackage.apexp?p0=04t5f00000074nmAAA + +Update with `sfdx force:package1:version:list --json -u mbianco+newstripeconnectorqa@stripe.com | jq -r '.result[-1].MetadataPackageVersionId'` # stripe-salesforce @@ -135,7 +143,6 @@ Then create a new package in the production packaging org. - Click on the name of the package - Copy the package name field (`stripeConnector`), you'll need it in the next step - Click on upload, then: - - Release Type > Managed Released - Version Name: `QaStripeConnect` - New version number will be determined automatically @@ -152,6 +159,12 @@ Some notes: - If something is causing an error that you deleted in your source code, you can edit the offending file to resolve whatever is causing the error. This is often easier than asking SF to move your package to beta. - Ensure the "old order save behavior" is NOT checked +### Production Package Release + +- https://security.secure.force.com/security/tools/forcecom/scanner use username and password of the production packaging org. +- Include sec rev in the username of another account which contains the latest production package. +- Make sure to write the Release Notes + ### Production Package Testing - We only wish to test the currently deployed production package. Therefore we do NOT run the salesforce tests like we do in QA, this is because those tests involve pushing a new source install. @@ -172,12 +185,6 @@ Some notes: - Enable Negative Quantity - Enable Zero Quantity -### Production Package Release - -- https://security.secure.force.com/security/tools/forcecom/scanner use username and password of the production packaging org. -- Include sec rev in the username of another account which contains the latest production package. -- Make sure to write the Release Notes - ## Creating a new QA package [Here's the full guide to creating a new package](https://developer.salesforce.com/docs/atlas.en-us.packagingGuide.meta/packagingGuide/uploading_packages.htm). Below is the short guide. @@ -212,6 +219,8 @@ https://appiphony92-dev-ed.my.salesforce.com/ **Warning:** the QA package is automatically updated on each CI build, so it is possible that CI runs the deploy command _right_ after your deploy command finishes running, which could cause strange issues where QA includes a WIP branch. +**Note:** Everytime you upload a package you'll see a "Are you sure?" message letting you know you can't edit components. Ignore it. + ## Removing Components from QA or Production Packages As referenced above, it is a slightly convoluted process to remove a component from a package once it has been added. You must: @@ -287,6 +296,12 @@ TODO this may not be applicable anymore since we've removed the `.sfdx` folder f - `sfdx/.sfdx/sfdx-config.json` edit the `defaultdevhubusername` / `defaultusername` TODO confirm if this is needed - `sf alias:set standardcpq=mbianco+standardcpq@stripe.com` adds an entry to `~/.sfdx/alias.json` +## Resetting Salesforce Org Keys + +- Debug console +- Anon Apex +- maintenanceUtilities.resetServiceConnection(); + # Development ## Deployment diff --git a/lib/stripe-force/db/user.rb b/lib/stripe-force/db/user.rb index b215856e0f..46f5a60cf1 100644 --- a/lib/stripe-force/db/user.rb +++ b/lib/stripe-force/db/user.rb @@ -27,6 +27,8 @@ class User < Sequel::Model SF_STRIPE_LIVEMODE_API_KEY = ENV.fetch('STRIPE_API_KEY') SF_STRIPE_TESTMODE_API_KEY = ENV.fetch('STRIPE_TEST_API_KEY') + AWS_KMS_SALESFORCE_CREDENTIALS = ENV.fetch('AWS_KMS_SALESFORCE_CREDENTIALS') + DEFAULT_CONNECTOR_SETTINGS = { api_percentage_limit: 95, sync_start_date: nil, @@ -254,7 +256,7 @@ def stripe_credentials(forced_livemode: nil) end protected def kms_encryption_key(field=nil) - ENV.fetch('AWS_KMS_SALESFORCE_CREDENTIALS') + AWS_KMS_SALESFORCE_CREDENTIALS end end diff --git a/salesforce_devtips.md b/salesforce_devtips.md index 6efa0070be..118abff265 100644 --- a/salesforce_devtips.md +++ b/salesforce_devtips.md @@ -33,6 +33,12 @@ - `SBQQ__PriceEditable__c` must be true on the line to customize the price later on +## Packaging + +- You'll see an apexdevnet as a remote site https://salesforce.stackexchange.com/questions/33167/apexdevnet-in-the-remote-site + - Do not include this in the package +- If you edit the URL of a remote site, it won't be updated in a package update. However, admins who have installed the package can manually edit it + ## Tools Most of these are blocked, but still interesting finds: diff --git a/sfdx/force-app/main/scratchSetup/apexEmailNotifications/apexEmailNotifications.notifications-meta.xml b/sfdx/force-app/main/scratchSetup/apexEmailNotifications/apexEmailNotifications.notifications-meta.xml index cab8d8116e..078c7e140a 100644 --- a/sfdx/force-app/main/scratchSetup/apexEmailNotifications/apexEmailNotifications.notifications-meta.xml +++ b/sfdx/force-app/main/scratchSetup/apexEmailNotifications/apexEmailNotifications.notifications-meta.xml @@ -1,3 +1,6 @@ - - + + + salesforce@stripe.com + + \ No newline at end of file diff --git a/test/integration/test_translate_order.rb b/test/integration/test_translate_order.rb index 9b24d1c501..e6b4be6729 100644 --- a/test/integration/test_translate_order.rb +++ b/test/integration/test_translate_order.rb @@ -124,6 +124,7 @@ class Critic::OrderTranslation < Critic::FunctionalTest assert_equal(SyncRecordResolutionStatuses::SUCCESS.serialize, sync_records.first[prefixed_stripe_field(SyncRecordFields::RESOLUTION_STATUS.serialize)]) end + # https://jira.corp.stripe.com/browse/PLATINT-1482 it 'does not filter out $0 line items' do sf_product_id_1, sf_pricebook_id_1 = salesforce_recurring_product_with_price sf_product_id_2, sf_pricebook_id_2 = salesforce_recurring_product_with_price(price: 0)