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

Bump actions/stale from 6 to 7 #45

Open
wants to merge 275 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
275 commits
Select commit Hold shift + click to select a range
e1dd2ae
Updates related to PR #24144
ruslan-ikhsan Nov 17, 2022
a4c36da
Update README.md
ruslan-ikhsan Nov 17, 2022
8c62e16
Updates for apache #24144
ruslan-ikhsan Nov 18, 2022
aab42a9
Update README.md
ruslan-ikhsan Nov 18, 2022
a763425
Merge branch 'master' into cloudbuild+manualsetup+playground
ruslan-ikhsan Nov 18, 2022
9788491
Update README.md
ruslan-ikhsan Nov 18, 2022
cb77aca
Update variables.tf
ruslan-ikhsan Nov 18, 2022
0aa6f1f
Update state.tfbackend
ruslan-ikhsan Nov 18, 2022
01e69dd
Revert "Update state.tfbackend"
ruslan-ikhsan Nov 18, 2022
3a4cbb6
Update README.md
ruslan-ikhsan Nov 18, 2022
af4de6b
Update README.md
ruslan-ikhsan Nov 18, 2022
a2fc91f
Update README.md
ruslan-ikhsan Nov 18, 2022
ff0b581
Update variables and logging type #24144
ruslan-ikhsan Nov 18, 2022
25c25ba
Updates related to tfvars file and Readme
ruslan-ikhsan Nov 21, 2022
1989f8c
Updates related to apache beam PR #24144
ruslan-ikhsan Nov 21, 2022
06f4e35
Updates related to apache beam PR #24144
ruslan-ikhsan Nov 21, 2022
5fd0082
Update iam.tf
ruslan-ikhsan Nov 22, 2022
c6fad41
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 22, 2022
4d9acb7
Updating cloud build configs
ruslan-ikhsan Nov 22, 2022
4338276
Update provider version to 4.0
ruslan-ikhsan Nov 22, 2022
9b8f9b7
Update README.md
ruslan-ikhsan Nov 22, 2022
dfb72cf
Updates with bash scripts for cloud builder
ruslan-ikhsan Nov 23, 2022
1d2560e
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
4d2eaec
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
86355e7
Updates of cloud build logic
ruslan-ikhsan Nov 23, 2022
3b6014e
Update env_init.sh
ruslan-ikhsan Nov 23, 2022
50cd0cc
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
090fa32
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
5c5bce6
Updates to cb bash scripts
ruslan-ikhsan Nov 23, 2022
62cfef2
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
08becf6
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
75352c6
Shell scripts updates
ruslan-ikhsan Nov 23, 2022
496356d
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
11d1e50
Update cloudbuild_pg_infra.yaml
ruslan-ikhsan Nov 23, 2022
ef6233d
Shell script updates cloud build
ruslan-ikhsan Nov 23, 2022
16d6ba4
Updates
ruslan-ikhsan Nov 23, 2022
debfb34
Updates related to PR #24144
ruslan-ikhsan Nov 23, 2022
0ba2855
Update terraform.tf
ruslan-ikhsan Nov 23, 2022
69c922b
Update README.md
ruslan-ikhsan Nov 23, 2022
a4c6ab8
Updates related to PR #24144
ruslan-ikhsan Nov 23, 2022
6545170
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 23, 2022
65f0a22
Revert "Update cloudbuild_pg_to_gke.yaml"
ruslan-ikhsan Nov 23, 2022
8888ff4
Update triggers.tf
ruslan-ikhsan Nov 23, 2022
c459f81
Merge branch 'apache:master' into cloudbuild+manualsetup+playground
ruslan-ikhsan Nov 23, 2022
7b2ecd9
Updates with new variables for region/location #24144
ruslan-ikhsan Nov 23, 2022
6769274
Merge branch 'cloudbuild+manualsetup+playground' of https://github.co…
ruslan-ikhsan Nov 23, 2022
0971f39
Update README.md
ruslan-ikhsan Nov 23, 2022
035bc5b
Updated for SDK_TAG
ruslan-ikhsan Nov 24, 2022
c996844
Update README.md
ruslan-ikhsan Nov 24, 2022
3850961
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
912986c
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
5a93aee
Update README.md
ruslan-ikhsan Nov 24, 2022
c755157
Update build.gradle.kts
ruslan-ikhsan Nov 24, 2022
b70afde
Updates
ruslan-ikhsan Nov 24, 2022
a1d0937
Update build.gradle.kts
ruslan-ikhsan Nov 24, 2022
d354909
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
c5d6018
Update Dockerfile
ruslan-ikhsan Nov 24, 2022
8e27e02
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
63bfc18
Update build.gradle.kts
ruslan-ikhsan Nov 24, 2022
95f0c9a
test faster without back
Nov 24, 2022
96b4c3e
Update env_init.sh
ruslan-ikhsan Nov 24, 2022
4f8ba9a
Updates to cloud build
ruslan-ikhsan Nov 24, 2022
54bba59
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
b4c0e7c
Update build.gradle.kts
ruslan-ikhsan Nov 24, 2022
2041959
Updates cloud build
ruslan-ikhsan Nov 24, 2022
b5b97bc
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 24, 2022
b3a5473
Update env_init.sh
ruslan-ikhsan Nov 24, 2022
d9db81a
Updates
ruslan-ikhsan Nov 24, 2022
871f149
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
55f47b8
Updates
ruslan-ikhsan Nov 25, 2022
f131d69
trying to set run helm verbose
Nov 25, 2022
5a123c0
remove unneeded task temporarily
Nov 25, 2022
ac50f55
remove extraargs
Nov 25, 2022
7ac4b6c
verbose
Nov 25, 2022
f18c830
remove extra args
Nov 25, 2022
22ab4bc
remove commented code
Nov 25, 2022
a6d8da5
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
93185f6
Merge branch 'cloudbuild+manualsetup+playground' of https://github.co…
ruslan-ikhsan Nov 25, 2022
0b95260
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
f704876
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
bffeaf4
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
7f2a6e2
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
ef4403e
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 25, 2022
cd03dd8
Update cloudbuild_pg_to_gke.yaml
ruslan-ikhsan Nov 25, 2022
ae9cfe2
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
75a55ed
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
686802f
Update build.gradle.kts
ruslan-ikhsan Nov 25, 2022
7775eb5
Updates related to PR #24144
ruslan-ikhsan Nov 25, 2022
724cee4
Updates related to PR #24144
ruslan-ikhsan Nov 25, 2022
38993af
Update README.md
ruslan-ikhsan Nov 28, 2022
1c50bb9
Update build.gradle.kts
ruslan-ikhsan Nov 28, 2022
0b63cc4
Update README.md
ruslan-ikhsan Nov 28, 2022
070cd57
Update README.md
ruslan-ikhsan Nov 29, 2022
b4dd9f3
Update README.md
ruslan-ikhsan Nov 29, 2022
afddc16
Update variables.tf
ruslan-ikhsan Nov 29, 2022
119d31b
Update main.tf
ruslan-ikhsan Nov 29, 2022
8ec1c0b
Revert "Update main.tf"
ruslan-ikhsan Nov 29, 2022
4fe36a5
Revert "Update variables.tf"
ruslan-ikhsan Nov 29, 2022
a62b05d
Majority of updates following the comments in #24144
ruslan-ikhsan Nov 30, 2022
bc004b2
Rest of updates following the comments in #24144
ruslan-ikhsan Nov 30, 2022
44b409b
Create main.tf
ruslan-ikhsan Oct 7, 2022
c0e73c7
Update main.tf
ruslan-ikhsan Oct 7, 2022
759f00c
Create requirements.txt
ruslan-ikhsan Oct 7, 2022
8d019f0
Add files via upload
ruslan-ikhsan Oct 7, 2022
46e5ed4
Added main.py to src/
ruslan-ikhsan Oct 7, 2022
fad664b
Create README.md
ruslan-ikhsan Oct 7, 2022
8facebb
Update README.md
ruslan-ikhsan Oct 7, 2022
5cbeb80
Update tf backend script
ruslan-ikhsan Oct 10, 2022
a53b945
Update tf backend script
ruslan-ikhsan Oct 10, 2022
d5e30b6
Update TF scripts
ruslan-ikhsan Oct 12, 2022
a8b2202
New Terraform CF backend scripts
ruslan-ikhsan Oct 13, 2022
b424b07
Update Terraform v2 for backend
ruslan-ikhsan Oct 13, 2022
308d7bd
Update backend.tf
ruslan-ikhsan Oct 13, 2022
3c91403
Added api_enable tf scripts
ruslan-ikhsan Oct 13, 2022
8b751a2
Update main.tf
ruslan-ikhsan Oct 13, 2022
9c68685
Update main.tf
ruslan-ikhsan Oct 13, 2022
ed25e54
Updated tf files
ruslan-ikhsan Oct 13, 2022
f66ee33
Update main.tf
ruslan-ikhsan Oct 13, 2022
03c3626
Update main.tf
ruslan-ikhsan Oct 13, 2022
bec03ed
Updated some tf sciprts
ruslan-ikhsan Oct 13, 2022
4629412
Updated TF Files v.2
ruslan-ikhsan Oct 13, 2022
3af4f1d
Updated files tf scripts
ruslan-ikhsan Oct 13, 2022
ec90bb4
Update main.tf
ruslan-ikhsan Oct 13, 2022
2650851
Updated tf scripts
ruslan-ikhsan Oct 13, 2022
d215fc5
Update main.tf
ruslan-ikhsan Oct 13, 2022
26e7296
Update main.tf
ruslan-ikhsan Oct 13, 2022
d6a0702
Updates
ruslan-ikhsan Oct 13, 2022
e01cacd
Update main.tf
ruslan-ikhsan Oct 13, 2022
a87b2ab
Update tf scripts
ruslan-ikhsan Oct 13, 2022
6eb395d
Update main.tf
ruslan-ikhsan Oct 13, 2022
56bc7a5
Set up GitHub workflow
ruslan-ikhsan Oct 13, 2022
b8237a9
Update
ruslan-ikhsan Oct 13, 2022
dfdee88
Update main.tf
ruslan-ikhsan Oct 13, 2022
e9520d8
Update main.tf
ruslan-ikhsan Oct 13, 2022
7d2f49a
Update outputs.tf
ruslan-ikhsan Oct 13, 2022
a73c4eb
Some summary
ruslan-ikhsan Oct 13, 2022
1302ff7
Update variables.tf
ruslan-ikhsan Oct 13, 2022
b33496d
Updates
ruslan-ikhsan Oct 13, 2022
2ad535e
Updated
ruslan-ikhsan Oct 13, 2022
d5f6449
Udpated
ruslan-ikhsan Oct 13, 2022
2ba8e74
Updates
ruslan-ikhsan Oct 13, 2022
579821e
Update main.tf
ruslan-ikhsan Oct 14, 2022
4e67f81
Add
ruslan-ikhsan Oct 14, 2022
8078fd4
Updates
ruslan-ikhsan Oct 14, 2022
e15a76c
Updates
ruslan-ikhsan Oct 14, 2022
3d2bd56
Almost Final version
ruslan-ikhsan Oct 14, 2022
2a9df59
Almost Final Version
ruslan-ikhsan Oct 14, 2022
0c5e238
Update
ruslan-ikhsan Oct 14, 2022
376cab7
Update variables.tf
ruslan-ikhsan Oct 14, 2022
56eae84
Update main.tf
ruslan-ikhsan Oct 14, 2022
c783e6e
Updates
ruslan-ikhsan Oct 14, 2022
d68f873
Updates
ruslan-ikhsan Oct 14, 2022
45a7d80
Updates
ruslan-ikhsan Oct 14, 2022
0718b1f
Updates
ruslan-ikhsan Oct 16, 2022
6e7c37e
Final update
ruslan-ikhsan Oct 16, 2022
0eb5c6f
Delete redundant dir cloud-build
ruslan-ikhsan Oct 16, 2022
5247d3a
Delete redundant terraform dir
ruslan-ikhsan Oct 16, 2022
a331cb5
Delete state.tfbackend
ruslan-ikhsan Oct 16, 2022
33aa2b7
Update main.tf
ruslan-ikhsan Oct 16, 2022
78400c2
Move files
ruslan-ikhsan Oct 18, 2022
7816bac
Update cloudbuild.yaml
ruslan-ikhsan Oct 18, 2022
19af091
Create gcp-deploy.yml
ruslan-ikhsan Oct 18, 2022
b2c91e6
Update gcp-deploy.yml
ruslan-ikhsan Oct 18, 2022
10b5a3e
Update main.tf
ruslan-ikhsan Oct 19, 2022
9de2cd3
Update TF script for TOB backend
ruslan-ikhsan Oct 20, 2022
b90bfdd
Delete gcp-deploy.yml
ruslan-ikhsan Oct 21, 2022
c8cdc0a
Update main.tf
ruslan-ikhsan Oct 21, 2022
22f9d65
Final updates. Ready for review
ruslan-ikhsan Oct 21, 2022
1280d4d
Deleted locals variable
ruslan-ikhsan Oct 21, 2022
62c8379
Cloud Build for PG Backend (go, java)
ruslan-ikhsan Oct 25, 2022
9b18af7
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
438c329
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
ade8c63
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
c3b0b04
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
cf7c42c
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
348a0a5
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
68bd4a0
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
4cf12b5
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
360ab7f
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
2cff7e5
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 25, 2022
6c25baf
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 26, 2022
2a371d7
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 26, 2022
524791e
New cloudbuild yaml for backend
ruslan-ikhsan Oct 26, 2022
07c6196
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 26, 2022
22e23a7
Update cloudbuild_playground_backend.yml
ruslan-ikhsan Oct 26, 2022
1768904
Update for PR 280
ruslan-ikhsan Nov 7, 2022
8ef3ef0
Create cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
e8da240
Update cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
2d3fb66
Update cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
3f294d4
Update cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
d402c89
Update cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
1d2a7b2
Update cloudbuild_trigger.yml
ruslan-ikhsan Nov 2, 2022
fc56907
Delete cloudbuild_playground_backend.yml
ruslan-ikhsan Nov 3, 2022
9961422
Delete Dockerfile-base-image-backend
ruslan-ikhsan Nov 3, 2022
07a9fda
Delete cloudbuild_trigger.yml
ruslan-ikhsan Nov 3, 2022
b0c9531
Delete cloudbuild_playground_backend.yml
ruslan-ikhsan Nov 3, 2022
239884f
Update variables.tf
ruslan-ikhsan Nov 7, 2022
278814e
Update README.md
ruslan-ikhsan Nov 8, 2022
06f4b5e
Update README.md
ruslan-ikhsan Nov 8, 2022
91d07ac
Create cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
456c456
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
7a59a32
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
4abdede
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
66b67b4
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
90c45e5
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
9f5b2d2
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
fd3f866
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
83ffcd6
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
9b5c413
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
799133c
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
acd3320
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
9bad046
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
c12e0ef
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
7d72900
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
e223cc4
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
8703895
Update cloudbuild.yaml
ruslan-ikhsan Nov 29, 2022
eb3d2e5
Bump github.com/aws/aws-sdk-go-v2/credentials in /sdks (#24318)
dependabot[bot] Nov 23, 2022
9557ed5
[Website] update table text content overflow #23460
bullet03 Oct 3, 2022
528faa1
[Metrics] Add 'performance tests' tag to JMH dashboard (related to #2…
Nov 23, 2022
206ea0c
Update apache beam installation in notebook (#24336)
AnandInguva Nov 23, 2022
960b09b
Adds GCP core dependency to the test expansion service (#24308)
chamikaramj Nov 23, 2022
9e782b3
[Spark dataset runner] Fix translation to run in the evaluation threa…
Nov 23, 2022
d87eb54
Update dataflow containers to coincide with objsize 0.6.1 update (#24…
lukecwik Nov 23, 2022
d60cfdc
Add test configurations for deterministic outputs on Dataflow (#24325)
AnandInguva Nov 23, 2022
2dec824
Updates ExpansionService to support dynamically discovering and expan…
chamikaramj Nov 24, 2022
445ec8d
Enable streaming runner v2 tests that were forgotten to be enabled. (…
lukecwik Nov 24, 2022
62af16e
A schema transform implementation for SpannerIO.Write (#24278)
pabloem Nov 24, 2022
f1e1299
Update java-multi-language-pipelines.md (#24345)
kn1kn1 Nov 25, 2022
6ec3125
[Tour Of Beam] persistence_key for Pg::SaveSnippet (#24287)
eantyshev Nov 28, 2022
a388f99
Get postcommits green and unsickbay (#24342)
damccorm Nov 28, 2022
858ea05
Fix workflow cron syntax (#24376)
damccorm Nov 28, 2022
0a6a240
concurrency (#24332)
eantyshev Nov 28, 2022
453fdfe
Check for null in BeamFnDataGrpcMultiplexer
kennknowles Nov 18, 2022
1df3d11
Upgrade checkerframework to 3.12.0
kennknowles Nov 18, 2022
f1f9c5e
Upgrade checkerframework gradle plugin to 0.6.19
kennknowles Nov 18, 2022
2f72234
Handle CompleteWorkStatus shutdown signal
apilloud Nov 16, 2022
d6dc8d0
Revert "Force discarding mode in with_fanout without rewindowing." (#…
tvalentyn Nov 28, 2022
f733441
Bump pillow from 9.2.0 to 9.3.0 in /sdks/python/apache_beam/examples/…
dependabot[bot] Nov 28, 2022
6dd5daf
Update precombine bencmark to better represent varied workloads (#24343)
lukecwik Nov 29, 2022
6c1e2d4
Merge pull request #24320: update bom to the latest one
reuvenlax Nov 29, 2022
2a83576
Merge pull request #24147: First step in adding schema update to Stor…
reuvenlax Nov 29, 2022
671fbda
Simplify sdks/java/harness build
apilloud Nov 17, 2022
14d6cd7
Move configuration changes before shadowJar
apilloud Nov 18, 2022
6ceb57f
Exclude :sdks:java:core from harness jar
apilloud Nov 18, 2022
1488804
Enable shadowJar validation for sdks/java/harness
apilloud Nov 18, 2022
3978cae
Add missing portability runner dependencies
apilloud Nov 18, 2022
2ccee17
Exclude jamm from harness jar
apilloud Nov 21, 2022
1fa52dc
Enforce GCP BOM on sdks/java/harness
apilloud Nov 28, 2022
12521f9
Merge branch 'akvelon:master' into master
ruslan-ikhsan Nov 30, 2022
6eef843
Bump actions/stale from 6 to 7
dependabot[bot] Dec 21, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
pull-requests: write

steps:
- uses: actions/stale@v6
- uses: actions/stale@v7
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
stale-pr-message: 'This pull request has been marked as stale due to 60 days of inactivity. It will be closed in 1 week if no further activity occurs. If you think that’s incorrect or this pull request requires a review, please simply write any comment. If closed, you can revive the PR at any time and @mention a reviewer or discuss it on the [email protected] list. Thank you for your contributions.'
Expand Down
58 changes: 58 additions & 0 deletions cloudbuild.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

steps:
- name: 'ubuntu'
entrypoint: 'bash'
args:
- '-c'
- |
apt-get update
export DEBIAN_FRONTEND=noninteractive
apt-get install -y software-properties-common
add-apt-repository -y ppa:deadsnakes/ppa && apt update
apt install -y python3.8 python3-pip
cd playground/infrastructure
pip install -r requirements.txt
export \
BEAM_ROOT_DIR="../../" \
SDK_CONFIG="../../playground/sdks.yaml" \
BEAM_EXAMPLE_CATEGORIES="../categories.yaml" \
SERVER_ADDRESS="https://backend-${_SDK}-beta-dot-apache-beam-testing.appspot.com" \
BEAM_USE_WEBGRPC=yes \
BEAM_CONCURRENCY=4
python3 ci_cd.py --step ${_STEP} --sdk SDK_${_SDK} --origin ${_ORIGIN} \
--subdirs ${_SUBDIRS}

env:
- 'ORIGIN=${_ORIGIN}'
- 'SDK=${_SDK}'
- 'STEP=${_STEP}'
- 'SUBDIRS=${_SUBDIRS}'
- 'GOOGLE_CLOUD_PROJECT=$PROJECT_ID'

substitutions:
_STEP: CD
_SDK: GO
_ORIGIN: PG_EXAMPLES
_SUBDIRS: "../../learning/katas ../../examples ../../sdks"

# This option enables writing logs to Cloud Logging
options:
logging: CLOUD_LOGGING_ONLY

timeout: 3600s
79 changes: 79 additions & 0 deletions learning/tour-of-beam/terraform-v2/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->

# Overview

This project deploys backend infrastructure for Tour of Beam as GCP Cloud Functions using Terraform.

# Requirements

## Development requirements

- [Active GCP project with billing enabled](https://developers.google.com/workspace/guides/create-project)
- [Existing bucket to store Terraform state](https://cloud.google.com/storage/docs/creating-buckets)
- [Existing service account with the following roles](https://cloud.google.com/iam/docs/creating-managing-service-accounts):
- Cloud Functions Admin
- Project IAM Admin
- Service Account Admin
- Service Account User
- Storage Admin
- Storage Object Admin

#### Configuring your environment

Steps below will:
1. Enable required APIs for the project
2. Create service account and assign required IAM roles to it (service account to run the function with)
3. Create bucket to archive and store source code
4. Create cloud functions to each function defined in backend source code


```bash
# Create environment directory per your requirements/policy
mkdir environments/dev
cd ../environments/dev
# Create new configuration to auth to GCP Project
gcloud init
# Acquire new user credentials to use for Application Default Credentials
gcloud auth application-default login
# Initiliaze and run terraform
terraform init
terraform plan
terraform apply
```


### Sample usage

Entry point: list sdk names
```
$ curl -X GET https://$REGION-$PROJECT_ID.cloudfunctions.net/getSdkList | json_pp
```
[response](./samples/api/get_sdk_list.json)

Get content tree by sdk name (SDK name == SDK id)
```
$ curl -X GET 'https://$REGION-$PROJECT_ID.cloudfunctions.net/getContentTree?sdk=python'
```
[response](./samples/api/get_content_tree.json)


Get unit content tree by sdk name and unitId
```
$ curl -X GET 'https://$REGION-$PROJECT_ID.cloudfunctions.net/getContentTree?sdk=python&id=challenge1'
```
[response](./samples/api/get_unit_content.json)
28 changes: 28 additions & 0 deletions learning/tour-of-beam/terraform-v2/backend_state.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

terraform {
backend "gcs" {
prefix = "terraform-state"
}
required_providers {
google = {
source = "hashicorp/google"
version = "~> 4.40.0"
}
}
}
50 changes: 50 additions & 0 deletions learning/tour-of-beam/terraform-v2/main.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

provider "google" {
project = var.project_id
}

module "iam" {
source = "./modules/iam"
project_id = var.project_id
service_account_id = var.service_account_id
depends_on = [module.api_enable]
}

module "buckets" {
source = "./modules/buckets"
project_id = var.project_id
bucket_name = var.bucket_name
depends_on = [module.iam, module.api_enable]
}

module "api_enable" {
source = "./modules/api_enable"
project_id = var.project_id
}

module "cloud_functions" {
source = "./modules/cloud_functions"
region = var.region
project_id = var.project_id
bucket_name = var.bucket_name
service_account_id = module.iam.service-account-email
source_archive_bucket = module.buckets.functions-bucket-name
source_archive_object = module.buckets.function-bucket-object
depends_on = [module.buckets, module.iam, module.api_enable]
}
28 changes: 28 additions & 0 deletions learning/tour-of-beam/terraform-v2/modules/api_enable/main.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

resource "google_project_service" "required_services" {
project = var.project_id
for_each = toset([
"cloudbuild",
"cloudfunctions",
"cloudresourcemanager",
"iam",
])
service = "${each.key}.googleapis.com"
disable_on_destroy = false
}
20 changes: 20 additions & 0 deletions learning/tour-of-beam/terraform-v2/modules/api_enable/variables.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

variable "project_id" {
description = "The ID of the Google Cloud project within which resources are provisioned"
}
33 changes: 33 additions & 0 deletions learning/tour-of-beam/terraform-v2/modules/buckets/main.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

resource "google_storage_bucket" "cloud_functions_bucket" {
name = var.bucket_name
location = var.location
project = var.project_id
storage_class = "STANDARD"
}

resource "google_storage_bucket_object" "zip" {
# Use an MD5 here. If there's no changes to the source code, this won't change either.
# We can avoid unnecessary redeployments by validating the code is unchanged, and forcing
# a redeployment when it has!
name = "${data.archive_file.source_code.output_md5}.zip"
bucket = google_storage_bucket.cloud_functions_bucket.name
source = data.archive_file.source_code.output_path
content_type = "application/zip"
}
28 changes: 28 additions & 0 deletions learning/tour-of-beam/terraform-v2/modules/buckets/outputs.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

output "functions-bucket-id" {
value = google_storage_bucket.cloud_functions_bucket.id
}

output "functions-bucket-name" {
value = google_storage_bucket.cloud_functions_bucket.name
}

output "function-bucket-object" {
value = google_storage_bucket_object.zip.name
}
36 changes: 36 additions & 0 deletions learning/tour-of-beam/terraform-v2/modules/buckets/variables.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.

#Generates archive of source code
variable "bucket_name" {
description = "The bucket name to store functions' source code"
}

variable "location" {
description = "Cloud Functions bucket Region"
default = "us-central1"
}

variable "project_id" {
description = "The ID of the Google Cloud project within which resources are provisioned"
}

data "archive_file" "source_code" {
type = "zip"
source_dir = "../backend"
output_path = "/tmp/backend.zip"
}
Loading