* Initial commit for Ads Service. * update comments for AdsService and AdsServiceClient * Refactor Ads to Ad Move building AdService to Docker Use default setting for Stackdriver Exporter. Add license text. * Revert the projectId - also remove commented code from frontend/rpc.go * Add adservie to skaffold.yaml * Remove skaffold-adservice.yaml * Replace personal projectId with demo projectId. * Fix the crash in adservice when ran in locally. * Ignore .skaffold*yaml file and .kubernetes-manifests-*/ dir for easy ProjectID switch. * Fixed review comments. 1. Changed Ad redirect urls to products. 2. Removed leftovers from Dockerfile/kub*manifests*yaml 3. Added retry for StackDriver. 4. Added log for Ad request. 5. Added comment for gradle caching. 6. Added README.md to src/adservice. * Added GRPC Health service to Ad Service Also added 1. timeout to getAd RPC call in frontend. 2. Async thread for stackdriver init. |
||
---|---|---|
.. | ||
gradle/wrapper | ||
src/main | ||
.gitignore | ||
build.gradle | ||
Dockerfile | ||
genproto.sh | ||
gradlew | ||
gradlew.bat | ||
README.md | ||
settings.gradle |
Ad Service
The Ad service provides advertisement based on context keys. If no context keys are provided then it returns random ads.
Local Build
The Ad service uses gradlew to compile/install/distribute. Gradle wrapper is already part of the source code. To build Ad Service, run
cd src/adservice; ./gradlew installDist
It will create executable script src/adservice/build/install/hipstershop/bin/AdService
Upgrade gradle version
If you need to upgrade the version of gradle then run
cd src/adservice ; ./gradlew wrapper --gradle-version <new-version>
Docker Build
From repository root, run:
docker build --file src/adservice/Dockerfile .