Skip to content

Commit 38c2deb

Browse files
committed
[SPARK-52297] Add Swift-based SparkPi K8s Job example
### What changes were proposed in this pull request? This PR aims to add [Swift-based SparkPi](https://github.com/apache/spark-connect-swift/tree/main/Examples/pi) K8s [Job](https://kubernetes.io/docs/concepts/workloads/controllers/job/) example. ### Why are the changes needed? To provide a working example with - [Apache Spark 4.0.0 Connect Server](https://spark.apache.org/docs/4.0.0/) launched by [Apache Spark Kubernetes Operator 0.2.0](https://artifacthub.io/packages/helm/spark-kubernetes-operator/spark-kubernetes-operator) Helm chart. - [SparkPi Swift App](https://github.com/apache/spark-connect-swift/tree/main/Examples/pi) developed with [Apache Spark Connect for Swift 0.2.0](https://swiftpackageindex.com/apache/spark-connect-swift) library. - [Swift 6.1](https://www.swift.org) language ### Does this PR introduce _any_ user-facing change? No behavior change because this is a new example. ### How was this patch tested? Manual tests. ```bash # Install Spark K8s Operator $ helm install spark spark/spark-kubernetes-operator # Launch Spark 4.0 Connect Server $ kubectl apply -f examples/spark-connect-server.yaml # Launch `Swift-based SparkPi` Application $ kubectl apply -f examples/job/pi-swift.yaml # Check the log $ kubectl logs -f job/spark-connect-swift-pi Pi is roughly 3.142923142923143 ``` ### Was this patch authored or co-authored using generative AI tooling? No. Closes apache#227 from dongjoon-hyun/SPARK-52297. Authored-by: Dongjoon Hyun <[email protected]> Signed-off-by: Dongjoon Hyun <[email protected]>
1 parent 4523b6d commit 38c2deb

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

examples/job/pi-swift.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one or more
2+
# contributor license agreements. See the NOTICE file distributed with
3+
# this work for additional information regarding copyright ownership.
4+
# The ASF licenses this file to You under the Apache License, Version 2.0
5+
# (the "License"); you may not use this file except in compliance with
6+
# the License. You may obtain a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS,
12+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
# See the License for the specific language governing permissions and
14+
# limitations under the License.
15+
apiVersion: batch/v1
16+
kind: Job
17+
metadata:
18+
name: spark-connect-swift-pi
19+
spec:
20+
template:
21+
spec:
22+
containers:
23+
- name: job
24+
image: dongjoon/spark-connect-swift:pi
25+
env:
26+
- name: SPARK_REMOTE
27+
value: 'sc://spark-connect-server-0-driver-svc:15002'
28+
restartPolicy: Never

0 commit comments

Comments
 (0)