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

Release dev to main branch + production environment #531

Open
wants to merge 210 commits into
base: main
Choose a base branch
from
Open

Release dev to main branch + production environment #531

wants to merge 210 commits into from

Conversation

Seburan
Copy link
Contributor

@Seburan Seburan commented Jan 21, 2025

Description

This Pull Request moves all the changes made to dev branch to main branch, releasing all the changes to production environment.

Affected services

  • Home
  • News
  • Shop
  • Travel
  • DSP
  • SSP
  • ALL

Other:

siddharth-sahoo and others added 30 commits July 7, 2024 08:45
Add support for ad beacon reporting
Pulling upstream changes to contributing guide.
Reorganize functions to keep relevant functions together
Seburan and others added 12 commits January 11, 2025 00:06
github.com/DavidAnson/markdownlint-cli2: v0.14.0 → v0.17.1
(deps): Bump github/codeql-action
(deps): Bump actions/upload-artifact
Upgrade pre-commit config and Scorecard analysis workflow
…olumes

add docker-compose down command to clean npm script
github.com/DavidAnson/markdownlint-cli2: v0.14.0 → v0.17.1
(deps): Bump github/codeql-action
(deps): Bump actions/upload-artifact
- upgrade docusaurus and its depdenencies to v3.7
- upgrade react to v19.0
- clean package-lock.json to remove unused depdencies (algolia search)
- add css for notification bar
- update react-cookie-consent config with css classes, and disable debug mode.
@Seburan Seburan added this to the v2.0 milestone Jan 21, 2025
});
// Enable CORS.
if (req.headers.origin?.startsWith(`https://${DEMO_HOST_PREFIX}`)) {
res.setHeader('Access-Control-Allow-Origin', req.headers.origin!);

Check failure

Code scanning / CodeQL

CORS misconfiguration for credentials transfer High

Credential
leak vulnerability due to a
misconfigured CORS header value
.
</Creative>
</Creatives>
<VASTAdTagURI>
<![CDATA[<%- `${DSP_VAST}` %>]]>

Check failure

Code scanning / CodeQL

Client-side cross-site scripting High

Cross-site scripting vulnerability due to
user-provided value
.
title: TITLE,
lorem: LOREM,
app.get('*', async (req: Request, res: Response) => {
res.render(req.path.substring(1), {

Check failure

Code scanning / CodeQL

Uncontrolled data used in path expression High

This path depends on a
user-provided value
.
Copy link

google-cla bot commented Jan 21, 2025

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I wanted to provide a summary of the changes for you and other reviewers to quickly get up to speed.

This pull request, authored by Seburan, merges all changes from the dev branch into the main branch, effectively releasing all changes to the production environment. The changes include:

  • Addition of use case demos: A new .demos file was added, defining an array DEMOS containing four use case demos: uc-single-touch-conversion, uc-remarketing, uc-vast-video-paapi, and uc-video-multi-seller-seq-auction-paapi. Associated Cloud Function entry points and synthetic monitor titles are defined in DEMO_MONITORING_ENTRYPOINT and DEMO_TITLE associative arrays, respectively. (Lines 1-16 of .demos)
  • Updates to .env file: This file was updated to include a DEMO_HOST_PREFIX variable and to add _URI variables for HOME, NEWS, SHOP, and TRAVEL services, providing full URIs. The SERVICES array was also modified to remove topics and topics-server entries. Google Analytics Measurement IDs were added for HOME, NEWS, SHOP, and TRAVEL. (Lines 5-39 and 78-94 of .env)
  • Changes to .env.deploy.template: This file was updated to include GCP_REGION and ENV_FILE variables for deployment configuration. (Lines 1-5 of .env.deploy.template)
  • Simplification of .gcloudignore: This file was simplified to include only necessary files. (Lines 1-7 of .gcloudignore)
  • Removal of entries from .github/dependabot.yml: Several entries related to specific service directories were removed from the Dependabot configuration file. (Lines 85-141 of .github/dependabot.yml)
  • Addition of GitHub Actions workflow: A new GitHub Actions workflow (github-repo-stats.yml) was added to generate repository statistics. (Lines 1-19 of .github/workflows/github-repo-stats.yml)
  • Update of GitHub Actions workflow: The scorecard.yml workflow was updated to use newer versions of the actions/upload-artifact and github/codeql-action/upload-sarif actions. (Lines 51-57 and 60-65 of .github/workflows/scorecard.yml)
  • Update to .gitignore: The .env.deploy file was added to the .gitignore file. (Lines 4-7 of .gitignore)
  • Update to .pre-commit-config.yaml: The markdownlint-cli2 hook was updated to version v0.17.1. (Lines 32-38 of .pre-commit-config.yaml)
  • Minor README.md update: A minor typo was corrected in the README.md file. (Lines 1-3 of README.md)
  • README.md table update: The table in the README.md file was updated to include the Multi-touch conversion Attribution use case and to clarify the Privacy Sandbox APIs used. (Lines 35-47 of README.md)
  • Updates to cicd/.env.dev, cicd/.env.prod, and cicd/cloudbuild.yaml: Significant changes were made to these files, primarily refactoring the deployment process to consolidate the deployment of multiple ad-tech services into a single image. This involved changes to attestation file handling, Dockerfile locations, and Cloud Run deployment commands. The changes are too extensive to summarize fully here without a more detailed analysis. Please review the diffs carefully.
  • Changes to docker-compose.yml: The docker-compose.yml file was updated to reflect the changes in the project structure, removing references to the topics and topics-server services. (Lines 1-17 and 67-163 of docker-compose.yml)
  • Addition of docs/dependencies.md: A new file was added to document the codebase dependencies. (Lines 1-37 of docs/dependencies.md)
  • Updates to firebase.json: The firebase.json file was updated to reflect the changes in the project structure, consolidating the deployment of multiple ad-tech services. (Lines 2-209 of firebase.json)
  • Addition of monitoring/puppeteer-nodejs directory: A new directory was added, containing code for synthetic monitoring of the use case demos using Puppeteer. The changes are too extensive to summarize fully here without a more detailed analysis. Please review the diffs carefully.

Please let me know if you have any questions.

Best,
Gemini

@Seburan Seburan changed the title Dev Release dev to main branch + production environment Jan 21, 2025
Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I wanted to provide a quick summary of the changes for you and other reviewers to get up to speed.

This pull request merges all changes from the dev branch into the main branch, effectively releasing all changes to the production environment. I observed the following key changes:

  • .demos file: Added a new file defining use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds the following use cases:

    • uc-single-touch-conversion (Single-touch conversion Attribution)
    • uc-remarketing (Remarketing)
    • uc-vast-video-paapi (Instream VAST video ad in a Protected Audience single-seller auction)
    • uc-video-multi-seller-seq-auction-paapi (Instream video ad in a Protected Audience multi-seller sequential auction setup)
  • .env file: Updated the list of services, removing topics and topics-server. Added DEMO_HOST_PREFIX variable. Added URIs for HOME, NEWS, SHOP, and TRAVEL services. Added HOME_MEASUREMENT_ID for Google Analytics. Refactored topic-related variables to use a consistent prefix. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI.

  • .env.deploy.template file: Added GCP_REGION and ENV_FILE variables. Updated the description to indicate the file is for deployment environment variables.

  • .gcloudignore file: Removed entries for services/home/.docusaurus and services/shop/.next.

  • .github/dependabot.yml file: Removed entries for services/dsp, services/ssp, services/news, services/shop, services/travel, and services/collector/src.

  • .github/workflows/github-repo-stats.yml file: Added a new workflow to generate GitHub repository statistics.

  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: Added .env.deploy to the ignored files.

  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2 to v0.17.1.

  • README.md file: Updated the description of the project and added a new section for codebase dependencies.

  • cicd/.env.dev file: Updated the DEMO_HOST_PREFIX variable, added URIs for services, and added HOME_MEASUREMENT_ID for Google Analytics. Refactored topic-related variables to use a consistent prefix. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI. Updated HOME_MEASUREMENT_ID and removed DSP and SSP tokens.

  • cicd/.env.prod file: Updated the DEMO_HOST_PREFIX variable, added URIs for services, and added HOME_MEASUREMENT_ID for Google Analytics. Refactored topic-related variables to use a consistent prefix. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI.

  • cicd/cloudbuild.yaml file: Simplified the attestation file copying logic. Modified the build and deployment steps for the home service to include environment variables. Added HOSTNAME environment variable to the deployment commands for home and news services. Significantly simplified the deployment steps for the ad-tech services.

  • docker-compose.yml file: Removed the topics and topics-server services.

  • docs/dependencies.md file: Added a new markdown file describing the codebase dependencies.

  • firebase.json file: Updated the public directory for dsp, dsp-a, dsp-b, and ad-server targets to services/ad-tech/src/public. Updated the public directory for shop to services/shop/src/public. Updated the rewrites for topics-motorcycles, topics-soccer, and topics-gardening to point to the news service.

  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new .gcloudignore file to ignore files and directories not needed for deployment.

  • monitoring/puppeteer-nodejs/.gitignore file: Added a new .gitignore file to ignore files and directories not needed for deployment.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new configuration file for Puppeteer.

  • monitoring/puppeteer-nodejs/README.md file: Added a new README file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/index.js file: Updated the Cloud Run Functions entry points for synthetic monitoring with Puppeteer.

  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new file to define constants used in the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new file to implement the remarketing use case.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new file to implement the single-touch conversion attribution use case.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new file to serve as a template for new monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new file to implement the instream VAST video ad use case.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new file to implement the instream video ad in a multi-seller sequential auction use case.

  • monitoring/puppeteer-nodejs/package.json file: Added a new package.json file for the puppeteer-nodejs directory.

  • nginx/nginx.conf file: Updated the server_name directives for the topics-related server blocks.

  • scripts/cloudrun_deploy.sh file: Added source cicd/.env.dev to load environment variables.

  • scripts/cloudrun_setup.sh file: Updated the gcloud services enable command to include additional services.

  • scripts/monitoring_deploy.sh file: Added a new script to deploy the monitoring functions to GCP.

  • scripts/monitoring_setup.sh file: Added a new script to set up the prerequisites for deploying the monitoring functions.

  • scripts/monitoring_uptime.sh file: Added a new script to deploy uptime checks and configure synthetic monitors.

Let me know if you have any questions.

Code review haiku:

Clean code's gentle flow,
Bugs flee in silent terror,
Joyful merge awaits.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post a full review in a few minutes. In the meantime, I wanted to provide a quick summary of the changes for you and other reviewers to get up to speed.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and deploy them to the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: This file was added and contains a list of use case demos, their Cloud Function entry points, and synthetic monitor titles. The use cases include single-touch conversion attribution, remarketing, and instream VAST video ads in both single-seller and multi-seller auction setups.
  • .env file: Several changes were made to this file, primarily adding URI fields for various services (home, news, shop, travel, dsp, ssp, ad-server) and a DEMO_HOST_PREFIX variable. The topics related services were removed. Google Analytics Measurement IDs were added for home, news, shop, and travel.
  • .env.deploy.template file: This file was modified to include GCP_REGION and ENV_FILE variables.
  • .gcloudignore file: This file was modified to remove some unnecessary entries.
  • .github/dependabot.yml file: This file was significantly modified to remove entries for various services (dsp, ssp, news, shop, travel, collector), leaving only the entry for home.
  • .github/workflows/github-repo-stats.yml file: This file was added to define a workflow for github repository statistics.
  • .github/workflows/scorecard.yml file: This file was modified to update the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.
  • README.md file: This file was modified to clarify the description of the Privacy Sandbox APIs and add a link to a document listing codebase dependencies. The table describing the supported use cases was also updated to include a new use case: Multi-touch conversion Attribution.
  • cicd/.env.dev file: Similar changes as in .env file, but with privacy-sandcastle-dev- as the DEMO_HOST_PREFIX and updated Google Analytics Measurement IDs.
  • cicd/.env.prod file: Similar changes as in .env file, but with privacy-sandbox-demos- as the DEMO_HOST_PREFIX and updated Google Analytics Measurement IDs. The TOPICS related services were removed.
  • cicd/cloudbuild.yaml file: This file was extensively modified to streamline the deployment process. The deployment of dsp, dsp-a, dsp-b, ssp, ssp-a, ssp-b, topics, and topics-server services were removed and replaced with a single deployment of ad-tech service. The deployment logic was updated to include hostname in the environment variables.
  • docker-compose.yml file: This file was modified to remove the topics and topics-server services.
  • docs/dependencies.md file: This file was added to document the codebase dependencies.
  • firebase.json file: This file was modified to reflect the changes in service structure. The topics and topics-server related entries were removed.
  • monitoring/puppeteer-nodejs/.gcloudignore file: This file was added to specify files that should not be uploaded to Google Cloud.
  • monitoring/puppeteer-nodejs/.gitignore file: This file was added to ignore cache and node modules.
  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: This file was added to configure puppeteer.
  • monitoring/puppeteer-nodejs/README.md file: This file was added to provide instructions for setting up and deploying the monitoring functions.
  • monitoring/puppeteer-nodejs/index.js file: This file was modified to include the new monitoring functions.
  • monitoring/puppeteer-nodejs/lib/constants.js file: This file was added to define constants for the monitoring functions.
  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: This file was added to implement the remarketing monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: This file was added to implement the single-touch conversion attribution monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: This file was added to provide a template for creating new monitoring functions.
  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: This file was added to implement the instream VAST video ad monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: This file was added to implement the instream video ad in a multi-seller sequential auction setup monitoring function.
  • monitoring/puppeteer-nodejs/package.json file: This file was added to define the dependencies for the monitoring functions.
  • nginx/nginx.conf file: This file was modified to remove the configurations for topics related services.
  • package.json file: This file was modified to update the clean and fmt scripts.
  • scripts/cloudrun_deploy.sh file: This file was modified to source cicd/.env.dev.
  • scripts/cloudrun_setup.sh file: This file was modified to enable additional Google Cloud services.
  • scripts/monitoring_deploy.sh file: This file was added to deploy the monitoring functions.
  • scripts/monitoring_setup.sh file: This file was added to set up the prerequisites for deploying the monitoring functions.
  • scripts/monitoring_uptime.sh file: This file was added to deploy uptime checks and configure synthetic monitors.

I'll provide a more detailed code review shortly.

Meanwhile, here's a little something to brighten your day:

From dev to main,
Code flows, a gentle stream,
Production awaits.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my feedback in a few minutes. In the meantime, I wanted to provide a summary of the changes for you and other reviewers to quickly get up to speed.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and deploy them to the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: This file was added and contains a list of use case demos, their Cloud Function entry points, and synthetic monitor titles. The use cases include:

    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Several changes were made to this file, primarily adding _URI variables to define the URIs for various services (home, news, shop, travel) and adding a HOME_MEASUREMENT_ID for Google Analytics. The SERVICES array was also modified to remove topics and topics-server entries. Additionally, a DEMO_HOST_PREFIX variable was added.

  • .env.deploy.template file: Two new environment variables, GCP_REGION and ENV_FILE, were added to this file, indicating a change in deployment configuration.

  • .gcloudignore file: This file was modified to remove entries for specific service directories, suggesting a change in how build artifacts are handled.

  • .github/dependabot.yml file: A significant portion of this file was removed, indicating a simplification or change in the dependency management process. Specifically, the configurations for dsp, ssp, news, shop, travel, and collector were removed.

  • .github/workflows/github-repo-stats.yml file: This file was added to set up a GitHub repository statistics workflow.

  • .github/workflows/scorecard.yml file: This file was updated to use newer versions of the actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: This file was updated to include .env.deploy.

  • .pre-commit-config.yaml file: This file was updated to use a newer version of the markdownlint-cli2 pre-commit hook.

  • README.md file: This file was updated to improve clarity and add a new section on codebase dependencies. The use case table was also updated to include a new use case.

  • cicd/.env.dev file: Similar to the .env file, this file was updated with _URI variables and a HOME_MEASUREMENT_ID.

  • cicd/.env.prod file: Similar updates were made to this file as well, reflecting changes in production environment configuration.

  • cicd/cloudbuild.yaml file: This file underwent substantial changes, primarily simplifying the deployment process for various services. The deployment of dsp, dsp-a, dsp-b, ssp, ssp-a, ssp-b, topics, and topics-server were removed and replaced with a single ad-tech deployment. The deployment scripts for home and news were also updated to include hostname environment variables.

  • docker-compose.yml file: This file was updated to remove entries related to topics and topics-server, aligning with the changes in the .env file. The dsp service was updated to use the ad-tech image.

  • docs/dependencies.md file: This file was added to document the codebase's dependencies, including web technologies and advertising technology.

  • firebase.json file: This file was updated to reflect the changes in the service directory structure, particularly for the dsp services which were consolidated into ad-tech.

  • monitoring/puppeteer-nodejs/.gcloudignore file: This file was added to control which files are uploaded to Google Cloud.

  • monitoring/puppeteer-nodejs/.gitignore file: This file was added to ignore certain files during git operations.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: This file was added to configure Puppeteer.

  • monitoring/puppeteer-nodejs/README.md file: This file was added to provide instructions for setting up and deploying the synthetic monitoring functions.

  • monitoring/puppeteer-nodejs/index.js file: This file was updated to include the new synthetic monitoring functions.

  • monitoring/puppeteer-nodejs/lib/constants.js file: This file was added to define constants used by the synthetic monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: This file was added to implement the synthetic monitoring function for remarketing.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: This file was added to implement the synthetic monitoring function for single-touch conversion attribution.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: This file was added as a template for creating new synthetic monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: This file was added to implement the synthetic monitoring function for instream VAST video ads.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: This file was added to implement the synthetic monitoring function for multi-seller sequential auction setup.

  • monitoring/puppeteer-nodejs/package.json file: This file was added to define the package metadata for the synthetic monitoring functions.

  • nginx/nginx.conf file: This file was updated to remove configurations for topics and topics-server, aligning with the changes in the .env file.

I'll provide a more detailed code review shortly.


A tiny poem for your code review delight:

From dev to main, a journey so grand,
Production awaits, a new command.
Code flows like a river, so free,
May this merge be smooth, you'll agree.

[READY] Home site - Cookie consent banner for Google Analytics
Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I'm providing this summary of the pull request's content for you and other reviewers to quickly get up to speed on the changes and intent.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and the production environment. The description indicates that all services are affected.

Here's a summary of the changes:

  • .demos file: Added a new file defining a list of use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds four new demos:

    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Updated environment variables for various services. Notably, removed topics and topics-server services, added DEMO_HOST_PREFIX, and added URI variables for HOME, NEWS, SHOP, and TRAVEL services. Also added HOME_MEASUREMENT_ID, NEWS_URI, SHOP_URI, and TRAVEL_URI variables.

  • .env.deploy.template file: Added GCP_REGION=us-central1 and ENV_FILE=cicd/.env.dev.

  • .gcloudignore file: Removed several entries, simplifying the files ignored by gcloud.

  • .github/dependabot.yml file: Removed numerous entries related to dependabot configurations for individual services. This suggests a simplification or consolidation of dependency management.

  • .github/workflows/github-repo-stats.yml file: Added a new GitHub Actions workflow for generating repository statistics using jgehrcke/github-repo-stats.

  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: Added .env.deploy to the ignored files.

  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2 to v0.17.1.

  • README.md file: Minor wording changes in the description and updated the table of use cases. Added a new use case for multi-touch conversion attribution.

  • cicd/.env.dev file: Updated environment variables, similar to changes in .env, but using privacy-sandcastle-dev- as the host prefix and updated Google Analytics Measurement ID.

  • cicd/.env.prod file: Updated environment variables, similar to changes in .env, but using privacy-sandbox-demos- as the host prefix and updated Google Analytics Measurement ID.

  • cicd/cloudbuild.yaml file: Significantly restructured the cloudbuild configuration, consolidating deployment steps for multiple services into a single ad-tech service. Added logic to set HOSTNAME environment variable for each service during deployment.

  • docker-compose.yml file: Removed services related to topics.

  • docs/dependencies.md file: Added a new markdown file documenting codebase dependencies.

  • firebase.json file: Updated paths for various services to reflect changes in the directory structure.

  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new .gcloudignore file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/.gitignore file: Added a new .gitignore file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new configuration file for puppeteer.

  • monitoring/puppeteer-nodejs/README.md file: Added a new README file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/index.js file: Added new Cloud Functions for synthetic monitoring of the new demos.

  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new constants file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new monitoring script for remarketing.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new monitoring script for single-touch conversion attribution.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new template file for monitoring scripts.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new monitoring script for VAST video ad.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new monitoring script for multi-seller sequential auction.

  • monitoring/puppeteer-nodejs/package.json file: Added a new package.json file for the puppeteer-nodejs directory.

  • nginx/nginx.conf file: Updated nginx configuration to reflect the removal of topics related services.

  • package.json file: Updated scripts and devDependencies.

  • scripts/cloudrun_deploy.sh file: Added source cicd/.env.dev.

  • scripts/cloudrun_setup.sh file: Updated the services enabled in the gcloud services enable command.

  • scripts/monitoring_deploy.sh file: Added a new script to deploy the monitoring functions.

  • scripts/monitoring_setup.sh file: Added a new script to setup the monitoring environment.

  • scripts/monitoring_uptime.sh file: Added a new script to setup the uptime checks.

I'll provide a more detailed code review shortly.

Short Poem:

Code flows like a stream,
Tests cascade, a gentle rain,
Bugs flee in the sun.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I wanted to provide a quick summary for you and other reviewers to get up to speed.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and deploy them to the production environment. The description indicates that all services are affected.

Here's a summary of the changes:

  • .demos file: Added a new file defining use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds four new demos:
    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Added DEMO_HOST_PREFIX and updated hostnames and URIs for several services to reflect production environment. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively.
  • .env.deploy.template file: Added GCP_REGION and ENV_FILE variables for deployment configuration.
  • .gcloudignore file: Removed some unnecessary entries, simplifying deployment.
  • .github/dependabot.yml file: Removed several outdated entries related to dependabot configurations.
  • .github/workflows/github-repo-stats.yml file: Added a new workflow for GitHub repository statistics.
  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.
  • .gitignore file: Added .env.deploy to the ignore list.
  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2 to v0.17.1.
  • README.md file: Updated the description of the project and added a link to codebase dependencies.
  • cicd/.env.dev file: Updated hostnames and URIs for several services to reflect the dev environment. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively. Removed some unnecessary tokens.
  • cicd/.env.prod file: Updated hostnames and URIs for several services to reflect the prod environment. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively. Removed some unnecessary tokens.
  • cicd/cloudbuild.yaml file: Significantly restructured the cloudbuild configuration, simplifying the deployment process. The changes are too extensive to summarize concisely here.
  • docker-compose.yml file: Removed references to topics and topics-server services.
  • docs/dependencies.md file: Added a new file documenting codebase dependencies.
  • firebase.json file: Updated the public paths for several services to reflect the new directory structure.
  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new .gcloudignore file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/.gitignore file: Added a new .gitignore file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new .puppeteerrc.cjs file for puppeteer configuration.
  • monitoring/puppeteer-nodejs/README.md file: Added a new README file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/index.js file: Added a new index.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new lib/constants.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new monitor-uc-remarketing.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new monitor-uc-single-touch-conversion.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new monitor-uc-template.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new monitor-uc-vast-video-paapi.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new monitor-uc-video-multi-seller-seq-auction-paapi.js file for the puppeteer-nodejs directory.
  • monitoring/puppeteer-nodejs/package.json file: Added a new package.json file for the puppeteer-nodejs directory.
  • nginx/nginx.conf file: Updated the server names and certificate paths for the nginx configuration.

Please let me know if you have any questions.


Code flows like a river,
Through branches, it ever weaves,
To the main it goes.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I wanted to provide a summary of the changes for you and other reviewers to quickly get up to speed.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and deploy them to the production environment. The description indicates that all services are affected.

Here's a summary of the changes:

  • .demos file: Added a new file defining use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds four new demos:

    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Added DEMO_HOST_PREFIX variable and added URIs for home, news, and travel services. Also added Google Analytics Measurement ID and Google Tag Manager Container ID for the home service. Removed topics and topics-server services.

  • .env.deploy.template file: Added GCP_REGION and ENV_FILE variables. Changed the description to clarify its purpose.

  • .gcloudignore file: Removed several files from the ignore list, simplifying deployment.

  • .github/dependabot.yml file: Removed several entries related to the now-removed services, simplifying dependency management.

  • .github/workflows/github-repo-stats.yml file: Added a new workflow to generate GitHub repository statistics.

  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: Added .env.deploy to the ignore list.

  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2 to v0.17.1.

  • README.md file: Updated the description of the repository and added a link to the dependencies documentation. Updated the table of use cases to include a new multi-touch conversion attribution demo.

  • cicd/.env.dev file: Updated hostnames and added URIs for dev environment. Added Google Analytics Measurement ID and Google Tag Manager Container ID for the home service. Removed topics and topics-server services. Updated DSP and SSP tokens to empty strings.

  • cicd/.env.prod file: Updated hostnames and added URIs for prod environment. Added Google Analytics Measurement ID and Google Tag Manager Container ID for the home service. Removed topics and topics-server services.

  • cicd/cloudbuild.yaml file: Simplified the attestation file copying process and removed deployment steps for the now-removed services. Added commands to set environment variables for HOME_HOST, HOME_MEASUREMENT_ID, and HOME_TAG_CONTAINER_ID in the build process for the home service. Added commands to set environment variables for HOSTNAME in the build process for home and news services.

  • docker-compose.yml file: Removed volumes and services related to the now-removed topics and topics-server services.

  • docs/dependencies.md file: Added a new file documenting the codebase dependencies.

  • firebase.json file: Updated the public paths for several services to reflect the changes in the file structure.

  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new file to specify files that should not be uploaded to Google Cloud.

  • monitoring/puppeteer-nodejs/.gitignore file: Added a new file to specify files that should be ignored by Git.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new file to configure Puppeteer.

  • monitoring/puppeteer-nodejs/README.md file: Added a new file providing an overview of the package and instructions on how to run and deploy it.

  • monitoring/puppeteer-nodejs/index.js file: Added a new file that defines the Cloud Functions for synthetic monitoring.

  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new file that defines the constants used by the package.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new file that defines the monitoring function for the remarketing use case.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new file that defines the monitoring function for the single-touch conversion attribution use case.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new file that serves as a template for creating new monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new file that defines the monitoring function for the instream VAST video ad in a Protected Audience single-seller auction use case.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new file that defines the monitoring function for the instream video ad in a Protected Audience multi-seller sequential auction setup use case.

  • monitoring/puppeteer-nodejs/package.json file: Added a new file that defines the package metadata.

  • nginx/nginx.conf file: Updated server names to reflect the changes in the file structure. Removed configurations for topics related services.

Let me know if you have any questions.


Code review, a quest,
Bugs to squash, a noble fight,
Ship with pride, at last!

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, here's a summary of the changes for you and other reviewers to quickly get up to speed:

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: Added a new file defining use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds four new use cases:

    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Added DEMO_HOST_PREFIX, HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, MOTO_NEWS_URI, SOCCER_NEWS_URI, GARDENING_NEWS_URI, and updated SERVICES. Added Google Analytics and Google Tag Manager IDs for the home service. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI.

  • .env.deploy.template file: Added GCP_REGION and ENV_FILE.

  • .gcloudignore file: Removed some files from the ignore list.

  • .github/dependabot.yml file: Removed several entries related to dependabot updates for various services.

  • .github/workflows/github-repo-stats.yml file: Added a new workflow file for github repo stats.

  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: Added .env.deploy to the ignore list.

  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2.

  • README.md file: Updated the description of the repository and added a new section on codebase dependencies. Also updated the table in the README to reflect the new use cases and APIs.

  • cicd/.env.dev file: Updated DEMO_HOST_PREFIX and SERVICES. Added HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, and updated hostnames to use .web.app. Added Google Analytics and Google Tag Manager IDs for the home service. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI. Updated DSP_TOKEN and SSP_TOKEN to empty strings.

  • cicd/.env.prod file: Updated DEMO_HOST_PREFIX and SERVICES. Added HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, and updated hostnames to use .dev. Added Google Analytics and Google Tag Manager IDs for the home service. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI.

  • cicd/cloudbuild.yaml file: Simplified the attestation file copy step. Removed many steps related to building and deploying individual services, consolidating them into a single ad-tech service.

  • docker-compose.yml file: Removed services related to topics.

  • docs/dependencies.md file: Added a new file documenting codebase dependencies.

  • firebase.json file: Updated paths for various services to reflect the new ad-tech service.

  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new .gcloudignore file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/.gitignore file: Added a new .gitignore file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new .puppeteerrc.cjs file for puppeteer configuration.

  • monitoring/puppeteer-nodejs/README.md file: Added a new README file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/index.js file: Added a new index.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new lib/constants.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new monitor-uc-remarketing.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new monitor-uc-single-touch-conversion.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new monitor-uc-template.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new monitor-uc-vast-video-paapi.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new monitor-uc-video-multi-seller-seq-auction-paapi.js file for the puppeteer-nodejs directory.

  • monitoring/puppeteer-nodejs/package.json file: Added a new package.json file for the puppeteer-nodejs directory.

  • nginx/nginx.conf file: Updated server names to reflect changes in service names.

  • scripts/cloudrun_deploy.sh file: Added source cicd/.env.dev.

  • scripts/cloudrun_setup.sh file: Updated the services enabled for Cloud Run.

  • scripts/monitoring_deploy.sh file: Added a new script for deploying monitoring functions.

  • scripts/monitoring_setup.sh file: Added a new script for setting up monitoring.

  • scripts/monitoring_uptime.sh file: Added a new script for setting up uptime checks.

Let me know if you have any questions.

Code review is a dance,
A careful step, a measured pace,
Bugs flee in the breeze.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, I wanted to provide a quick summary of the changes for you and other reviewers to get up to speed.

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and deploy them to the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: Added a list of use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds 4 new demos: uc-single-touch-conversion, uc-remarketing, uc-vast-video-paapi, and uc-video-multi-seller-seq-auction-paapi.
  • .env file: Added DEMO_HOST_PREFIX variable. Added URI variables for HOME, NEWS, SHOP, and TRAVEL services. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI variables. Renamed TOPICS_DETAIL to MOTO_NEWS_HOST, SOCCER_NEWS_HOST, GARDENING_NEWS_HOST, and their corresponding URIs.
  • .env.deploy.template file: Added GCP_REGION and ENV_FILE variables. Changed the description to '# Deployment env vars used by shell scripts'.
  • .gcloudignore file: Removed several lines related to specific service directories. Added #!include:.gitignore to include files from .gitignore.
  • .github/dependabot.yml file: Removed several entries related to individual service directories, leaving only the entry for /services/home.
  • .github/workflows/github-repo-stats.yml file: Added a new workflow file to generate github repo stats.
  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.
  • .gitignore file: Added a .env.deploy file to the ignore list.
  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2 hook to v0.17.1.
  • README.md file: Updated the description of the project, added a link to the codebase dependencies document, and updated the table of use cases.
  • cicd/.env.dev file: Added DEMO_HOST_PREFIX variable. Added URI variables for HOME, NEWS, SHOP, and TRAVEL services. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI variables. Renamed TOPICS_DETAIL to MOTO_NEWS_HOST, SOCCER_NEWS_HOST, GARDENING_NEWS_HOST, and their corresponding URIs. Set DSP_TOKEN and SSP_TOKEN to empty strings.
  • cicd/.env.prod file: Added DEMO_HOST_PREFIX variable. Added URI variables for HOME, NEWS, SHOP, and TRAVEL services. Added HOME_MEASUREMENT_ID and HOME_TAG_CONTAINER_ID for Google Analytics and Google Tag Manager integration respectively. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, TOPICS_SERVER_HOST, and TOPICS_SERVER_URI variables. Renamed TOPICS_DETAIL to MOTO_NEWS_HOST, SOCCER_NEWS_HOST, GARDENING_NEWS_HOST, and their corresponding URIs.
  • cicd/cloudbuild.yaml file: Simplified the copy-attestations step. Removed several steps related to individual service deployments, leaving only the steps for HOME, NEWS, SHOP, and TRAVEL services. Added commands to source the .env file and export relevant environment variables before running the build command for the HOME service. Added a new step for building and deploying the ad-tech service.
  • docker-compose.yml file: Removed several volumes and services related to topics and topics-server.
  • docs/dependencies.md file: Added a new markdown file listing codebase dependencies.
  • firebase.json file: Updated the public directory for dsp, dsp-a, dsp-b, and ad-server to services/ad-tech/src/public. Updated the public directory for shop to services/shop/src/public. Removed the entries for topics and topics-server.
  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new .gcloudignore file to ignore files for Google Cloud deployment.
  • monitoring/puppeteer-nodejs/.gitignore file: Added a new .gitignore file to ignore files for Git.
  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new configuration file for Puppeteer.
  • monitoring/puppeteer-nodejs/README.md file: Added a new README.md file for the Puppeteer-based monitoring scripts.
  • monitoring/puppeteer-nodejs/index.js file: Added a new index file for the Puppeteer-based monitoring scripts.
  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new constants file for the Puppeteer-based monitoring scripts.
  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new monitoring script for the remarketing use case.
  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new monitoring script for the single-touch conversion attribution use case.
  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new template file for creating new monitoring scripts.
  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new monitoring script for the instream VAST video ad in a Protected Audience single-seller auction use case.
  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new monitoring script for the instream video ad in a Protected Audience multi-seller sequential auction setup use case.
  • monitoring/puppeteer-nodejs/package.json file: Added a new package.json file for the Puppeteer-based monitoring scripts.
  • nginx/nginx.conf file: Updated the server names and certificates to reflect the new service structure.
  • package.json file: Updated the clean and fmt scripts.
  • scripts/cloudrun_deploy.sh file: Added a command to source cicd/.env.dev before sourcing .env.deploy.
  • scripts/cloudrun_setup.sh file: Updated the services enabled to include cloud functions and related services.
  • scripts/monitoring_deploy.sh file: Added a new script to deploy the Puppeteer-based monitoring scripts.
  • scripts/monitoring_setup.sh file: Added a new script to set up the environment for the Puppeteer-based monitoring scripts.
  • scripts/monitoring_uptime.sh file: Added a new script to deploy uptime checks and configure synthetic monitors.

Let me know if you have any questions!

Small changes, big impact,
Code flows like a river's grant,
Reviews make it right.

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post a full review in a few minutes. In the meantime, here's a summary for you and other reviewers to quickly get up to speed:

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: Added a new file defining use case demos, their Cloud Function entry points, and synthetic monitor titles. This adds four new use cases:
    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: Added DEMO_HOST_PREFIX, HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, MOTO_NEWS_URI, SOCCER_NEWS_URI, GARDENING_NEWS_URI, and AD_SERVER_URI. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, and TOPICS_SERVER_HOST. Added Google Analytics and Google Tag Manager IDs for the home page. Updated SERVICES to remove topics and topics-server.
  • .env.deploy.template file: Added GCP_REGION and ENV_FILE.
  • .gcloudignore file: Removed several entries, simplifying the files ignored by gcloud.
  • .github/dependabot.yml file: Removed several entries, simplifying the Dependabot configuration.
  • .github/workflows/github-repo-stats.yml file: Added a new workflow to generate GitHub repository statistics.
  • .github/workflows/scorecard.yml file: Updated the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.
  • .gitignore file: Added .env.deploy to the ignored files.
  • .pre-commit-config.yaml file: Updated the version of markdownlint-cli2.
  • README.md file: Updated the description, added a section on codebase dependencies, and updated the use case table.
  • cicd/.env.dev file: Added DEMO_HOST_PREFIX, HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, MOTO_NEWS_URI, SOCCER_NEWS_URI, GARDENING_NEWS_URI, and AD_SERVER_URI. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, and TOPICS_SERVER_HOST. Added Google Analytics and Google Tag Manager IDs for the home page. Updated SERVICES to remove topics and topics-server. Set DSP_TOKEN and SSP_TOKEN to empty strings.
  • cicd/.env.prod file: Added DEMO_HOST_PREFIX, HOME_URI, NEWS_URI, SHOP_URI, TRAVEL_URI, MOTO_NEWS_URI, SOCCER_NEWS_URI, GARDENING_NEWS_URI, and AD_SERVER_URI. Removed TOPICS_MOTO_HOST, TOPICS_SOCCER_HOST, TOPICS_GARDENING_HOST, and TOPICS_SERVER_HOST. Added Google Analytics and Google Tag Manager IDs for the home page. Updated SERVICES to remove topics and topics-server.
  • cicd/cloudbuild.yaml file: Simplified the attestation file copy step and removed the DSP, DSP-A, DSP-B, SSP, SSP-A, SSP-B, TOPICS, TOPICS-SERVER, and AD-SERVER deployment steps. Updated the HOME deployment step to include environment variables. Added HOSTNAME environment variable to the HOME and NEWS deployment steps.
  • docker-compose.yml file: Removed the topics and topics-server services. Updated the dsp, dsp-a, dsp-b, ssp, ssp-a, and ssp-b services to use the ad-tech image.
  • docs/dependencies.md file: Added a new file describing the codebase dependencies.
  • firebase.json file: Updated the public directory for dsp, dsp-a, dsp-b, and ad-server to services/ad-tech/src/public. Removed topics and topics-server targets.
  • monitoring/puppeteer-nodejs/.gcloudignore file: Added a new file to ignore files when deploying to Google Cloud.
  • monitoring/puppeteer-nodejs/.gitignore file: Added a new file to ignore files when committing to Git.
  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: Added a new file to configure Puppeteer.
  • monitoring/puppeteer-nodejs/README.md file: Added a new file with instructions on how to use the Puppeteer Node.js package.
  • monitoring/puppeteer-nodejs/index.js file: Added a new file to define the Cloud Functions.
  • monitoring/puppeteer-nodejs/lib/constants.js file: Added a new file to define the constants.
  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: Added a new file to implement the remarketing monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: Added a new file to implement the single-touch conversion monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: Added a new file to serve as a template for new monitoring functions.
  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: Added a new file to implement the VAST video ad monitoring function.
  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: Added a new file to implement the multi-seller sequential auction monitoring function.
  • monitoring/puppeteer-nodejs/package.json file: Added a new file to define the package metadata.
  • nginx/nginx.conf file: Updated the server names and certificates to reflect the changes in the .env file.

I hope this helps!

Copy link

@code-review-assist code-review-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi team,

I'm currently reviewing this pull request and will post my full review in a few minutes. In the meantime, here's a summary of the changes for you and other reviewers to quickly get up to speed:

This pull request, authored by Seburan, aims to release the changes from the dev branch to the main branch and the production environment. The description indicates that all services are affected.

Here's a breakdown of the changes:

  • .demos file: This file was added and contains an array DEMOS listing use case demos, and associative arrays DEMO_MONITORING_ENTRYPOINT and DEMO_TITLE mapping demo names to Cloud Function entry points and synthetic monitor titles respectively. The use cases are:

    • uc-single-touch-conversion
    • uc-remarketing
    • uc-vast-video-paapi
    • uc-video-multi-seller-seq-auction-paapi
  • .env file: This file was modified to include DEMO_HOST_PREFIX, URIs for various services (home, news, shop, travel), and Google Analytics and Google Tag Manager IDs for the home page.

  • .env.deploy.template file: This file was modified to include GCP_REGION and ENV_FILE variables.

  • .gcloudignore file: This file was modified to remove some unnecessary entries.

  • .github/dependabot.yml file: This file was modified to remove entries related to dependabot updates for several services, likely due to the consolidation of services into ad-tech.

  • .github/github-repo-stats.yml file: This file was added to configure a GitHub Actions workflow for generating repository statistics.

  • .github/workflows/scorecard.yml file: This file was modified to update the versions of actions/upload-artifact and github/codeql-action/upload-sarif actions.

  • .gitignore file: This file was modified to include .env.deploy.

  • .pre-commit-config.yaml file: This file was modified to update the version of markdownlint-cli2.

  • README.md file: This file was modified to improve clarity and add a link to a new docs/dependencies.md file. The table summarizing use cases was also updated to include multi-touch conversion attribution.

  • cicd/.env.dev file: This file was modified to include DEMO_HOST_PREFIX, URIs for various services, and Google Analytics and Google Tag Manager IDs for the home page. Also, DSP and SSP tokens were removed.

  • cicd/.env.prod file: This file was modified similarly to cicd/.env.dev, including URIs and Google Analytics and Google Tag Manager IDs. Also, DSP and SSP tokens were removed.

  • cicd/cloudbuild.yaml file: This file was extensively modified to reflect changes in service structure and deployment. Specifically, the deployment of individual services (dsp, dsp-a, dsp-b, ssp, ssp-a, ssp-b, ad-server) has been consolidated into a single deployment of ad-tech.

  • docker-compose.yml file: This file was modified to remove services related to topics.

  • docs/dependencies.md file: This file was added to document codebase dependencies.

  • firebase.json file: This file was modified to reflect changes in service structure, primarily moving public directories under services/ad-tech.

  • monitoring/puppeteer-nodejs/.gcloudignore file: This file was added to configure gcloud ignore rules.

  • monitoring/puppeteer-nodejs/.gitignore file: This file was added to configure git ignore rules.

  • monitoring/puppeteer-nodejs/.puppeteerrc.cjs file: This file was added to configure puppeteer.

  • monitoring/puppeteer-nodejs/README.md file: This file was added to document the usage of the puppeteer-nodejs package.

  • monitoring/puppeteer-nodejs/index.js file: This file was modified to include new monitoring functions for the added use cases.

  • monitoring/puppeteer-nodejs/lib/constants.js file: This file was added to define constants for the monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-remarketing.js file: This file was added to implement a monitoring function for remarketing.

  • monitoring/puppeteer-nodejs/monitor-uc-single-touch-conversion.js file: This file was added to implement a monitoring function for single-touch conversion attribution.

  • monitoring/puppeteer-nodejs/monitor-uc-template.js file: This file was added as a template for monitoring functions.

  • monitoring/puppeteer-nodejs/monitor-uc-vast-video-paapi.js file: This file was added to implement a monitoring function for VAST video ads.

  • monitoring/puppeteer-nodejs/monitor-uc-video-multi-seller-seq-auction-paapi.js file: This file was added to implement a monitoring function for multi-seller sequential auction video ads.

  • monitoring/puppeteer-nodejs/package.json file: This file was added to define the package metadata.

  • nginx/nginx.conf file: This file was modified to remove configurations related to topics.

I'll provide more detailed feedback in my full review.


Code flows like a river,
Through branches, it finds its way,
To the main, it's free.

Copy link

Gemini encountered an error creating the summary. You can try again by commenting @code-review-assist summarize.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants