Releases: google/feedloader
Feedloader v1.2.0
To upgrade Feedloader to the latest version, it is required to run the install_to_gcp.sh
script as well as push the latest code, .enc, and variables.json files to your Cloud Source Repository. See the README for details on how to install Feedloader.
New Features
Local Product Inventory Feeds
Feedloader now supports an alternate type of feed, local product inventory feeds (Shortened here to “local feed”).
To use this feed type, ensure that the schema defined in the file “feed_schema_config_local.json” matches your local feed file’s schema. Upload your local feed(s) to Feedloader’s GCS bucket set by your project’s “FEED_BUCKET” environment variable suffixed with “-local”. To start processing the set of one or more local feeds uploaded, upload an empty EOF file to the GCS bucket set by your project’s “UPDATE_BUCKET” environment variable suffixed with “-local”. If processing the feeds completed successfully, you will receive an email with the subject “Local Product Inventory Feed Processing Completed” containing the results of that Feedloader run.
IMPORTANT: It is required that a primary feed already have been uploaded to Feedloader/Merchant Center, as Local Product Inventory Feeds cannot be used without a primary feed already existing in Merchant Center. Take care to upload the primary feeds/EOFs to their respective “non-local” buckets.
Bugfixes/Changes
Cloud Composer version has been upgraded from 1 to 2 (composer-1.17.8-airflow-1.10.15 to composer-2.0.28-airflow-2.3.3)
Feedloader v1.1.1
To upgrade Feedloader to the latest version, it is required to run the install_to_gcp.sh
script as well as push the latest code, .enc, and variables.json files to your Cloud Source Repository. See the README for details on how to install Feedloader.
Bugfixes/Changes
Cloud Composer
- Fixed a bug to be compatible with the latest version of Cloud Composer which added a restriction that no longer allows "PROJECT_ID" to be defined as an environment variable.
Documentation
Added a section to the README explaining how to use the Local Inventory Ads feature.
Feedloader v1.1.0
To upgrade Feedloader to the latest version, it is required to run the install_to_gcp.sh
script as well as push the latest code, .enc, and variables.json files to your Cloud Source Repository. See the README for details on how to install Feedloader.
New Features
Support for Local Inventory Ads ("LIA")
-
By setting the environment variable
USE_LOCAL_INVENTORY_ADS
to a boolean "True" value, Feedloader will now send all feed items to the "local" channel destination in Content API in addition to the "online" channel. See here for details on LIA.Note: Choosing to use this setting will make all of your products both "online" and "local".
Support for Excluded and Included Destinations
-
Added the ability to set
included_destination
andexcluded_destination
via the feed file.See the links above for usage of these attributes.
Bugfixes/Changes
Cloud Composer
-
Fixed a bug where the Cloud Composer Python dependencies and the updated version of Cloud Composer were incompatible. Updated these to ensure compatibility between the two.
-
Fixed a bug where instead of checking if Cloud Composer was already installed, the installation script will now remove any pre-existing Cloud Composer Feedloader instance before re-installing it. This is due to the fact that errors occur if a Cloud Composer upgrade is performed across versions.
Cloud Build
- Deploying App Engine services has now been consolidated all into one build rule to ensure that GCP deploys these services in the required order.
Install-time Validation of Environment Variables
- Added install-time validation of environment variables, specifically for
EXPIRATION_THRESHOLD
,TIMEZONE_UTC_OFFSET
,USE_LOCAL_INVENTORY_ADS
,IS_MCA
, andSHOPTIMIZER_API_INTEGRATION_ON
, since these variables are often unintentionally incorrectly set.
Documentation
-
Added a section on how to use the MCID-per-item feature.
-
Added a DevOps guide for maintainers of a Feedloader deployment with common operations and Frequently Asked Questions.
-
Added a section explaining that non-Feedloader installed/customized GCP components could interfere with deploy and normal operation of Feedloader if installed to a pre-existing customized GCP environment.
Feedloader v1.0.0-beta
New Features
Python-based Cloud Functions
- All Cloud Functions have been ported to Python 3.9 from the legacy versions in Node.js. Cloud Build deployment scripts have been updated accordingly to deploy the Python versions instead of Node.js.
Developer-friendly End-to-End Test Scripts
- Added end-to-end shell scripts for the purpose of sanity testing the solution with user-provided sample data (feed files). This is mainly to be able to more easily verify Cloud Function logic with automated test scripts. Follow the script prompts for usage.
Bugfixes/Changes
Cloud Functions
-
Node.js versions of all Cloud Functions have now been deprecated.
-
Removed FILE_RANGE environment variable and associated alert from the Cloud Functions.
Cloud Composer
- Removed hardcoding the Cloud Composer Airflow version to --image-version composer-1.11.1-airflow-1.10.3 during installation. This should now result in the latest available version of Airflow being pulled instead of being locked to an older version.
Installation Script
-
Renamed script from "initialize_project.sh" to "install_to_gcp.sh".
-
Inserted sleep statements between GCP SDK commands due to a gcloud update which now causes concurrency errors if too many commands are run in sequence together.
-
Added quiet flags on shell commands to minimize unnecessary printed output while running the script.
-
Removed no-longer-needed alert policies and notifications.
Shoptimizer Interface
- In alignment with the deprecation of the Shoptimizer gtin optimizer, this has been removed from the Shoptimizer configuration settings, and new optimizers added to this config: free-shipping-optimizer, promo-text-removal-optimizer, shopping-exclusion-optimizer, and title-word-order-optimizer.
Documentation
-
Updated with Table of Contents.
-
Clarified the section on integrating with Shoptimizer API.