Skip to content

Commit 010bf26

Browse files
committed
Add missing root files
1 parent 44c5635 commit 010bf26

File tree

13 files changed

+460
-4
lines changed

13 files changed

+460
-4
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: Iceberg Bug report 🐞
3+
description: Problems, bugs and issues with Apache Iceberg
4+
labels: ["kind:bug"]
5+
body:
6+
- type: dropdown
7+
attributes:
8+
label: Apache Iceberg version
9+
description: What Apache Iceberg version are you using?
10+
multiple: false
11+
options:
12+
- "0.5.0 (latest release)"
13+
- "0.4.0"
14+
- "0.3.0"
15+
- "0.2.0"
16+
- "0.1.0"
17+
- "main (development)"
18+
validations:
19+
required: false
20+
- type: textarea
21+
attributes:
22+
label: Please describe the bug 🐞
23+
description: >
24+
Please describe the problem, what to expect, and how to reproduce.
25+
Feel free to include stacktraces and the Iceberg catalog configuration.
26+
You can include files by dragging and dropping them here.
27+
validations:
28+
required: true
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
name: Iceberg Improvement / Feature Request
3+
description: New features with Apache Iceberg
4+
labels: ["kind:feature request"]
5+
body:
6+
- type: textarea
7+
attributes:
8+
label: Feature Request / Improvement
9+
description: Please describe the feature and elaborate on the use case and motivation behind it
10+
validations:
11+
required: true
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
name: Iceberg Question
3+
description: Questions around Apache Iceberg
4+
labels: ["kind:question"]
5+
body:
6+
- type: textarea
7+
attributes:
8+
label: Question
9+
description: What is your question?
10+
validations:
11+
required: true

.github/dependabot.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
version: 2
21+
updates:
22+
- package-ecosystem: "pip"
23+
directory: "/"
24+
schedule:
25+
interval: "weekly"
26+
day: "sunday"
27+
open-pull-requests-limit: 5
28+
- package-ecosystem: "github-actions"
29+
directory: "/"
30+
schedule:
31+
interval: "weekly"
32+
day: "sunday"
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "Run License Check"
21+
on: pull_request
22+
23+
jobs:
24+
rat:
25+
runs-on: ubuntu-22.04
26+
steps:
27+
- uses: actions/checkout@v4
28+
- run: dev/check-license
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "Python Docs"
21+
on:
22+
workflow_dispatch:
23+
24+
concurrency:
25+
group: ${{ github.workflow }}-${{ github.ref }}
26+
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
27+
28+
jobs:
29+
docs:
30+
runs-on: ubuntu-22.04
31+
32+
steps:
33+
- uses: actions/checkout@v4
34+
- uses: actions/setup-python@v4
35+
with:
36+
python-version: ${{ matrix.python }}
37+
- name: Install
38+
working-directory: ./mkdocs
39+
run: pip install -r requirements.txt
40+
- name: Build
41+
working-directory: ./mkdocs
42+
run: mkdocs build --strict
43+
- name: Copy
44+
working-directory: ./mkdocs
45+
run: mv ./site /tmp/site
46+
- name: Push changes to gh-pages branch
47+
run: |
48+
git checkout --orphan gh-pages-tmp
49+
git rm --quiet -rf .
50+
cp -r /tmp/site/* .
51+
git config --global user.name 'GitHub Actions'
52+
git config --global user.email '[email protected]'
53+
echo "py.iceberg.apache.org" > CNAME
54+
git add --all
55+
git commit -m 'Publish Python docs'
56+
git push -f origin gh-pages-tmp:gh-pages || true

.github/workflows/python-ci.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "Python CI"
21+
22+
on:
23+
push:
24+
branches:
25+
- 'main'
26+
pull_request:
27+
28+
concurrency:
29+
group: ${{ github.workflow }}-${{ github.ref }}
30+
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
31+
32+
jobs:
33+
lint-and-test:
34+
runs-on: ubuntu-22.04
35+
strategy:
36+
matrix:
37+
python: ['3.8', '3.9', '3.10', '3.11']
38+
39+
steps:
40+
- uses: actions/checkout@v4
41+
- name: Install poetry
42+
run: make install-poetry
43+
- uses: actions/setup-python@v4
44+
with:
45+
python-version: ${{ matrix.python }}
46+
cache: poetry
47+
cache-dependency-path: ./poetry.lock
48+
- name: Install
49+
run: make install-dependencies
50+
- name: Linters
51+
run: make lint
52+
- name: Tests
53+
run: make test-coverage
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "Python Integration"
21+
22+
on:
23+
push:
24+
branches:
25+
- 'main'
26+
pull_request:
27+
28+
concurrency:
29+
group: ${{ github.workflow }}-${{ github.ref }}
30+
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
31+
32+
jobs:
33+
integration-test:
34+
runs-on: ubuntu-20.04
35+
36+
steps:
37+
- uses: actions/checkout@v4
38+
with:
39+
fetch-depth: 2
40+
- name: Install
41+
run: make install
42+
- name: Run integration tests
43+
run: make test-integration
44+
- name: Show debug logs
45+
if: ${{ failure() }}
46+
run: docker-compose -f dev/docker-compose.yml logs
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
#
2+
# Licensed to the Apache Software Foundation (ASF) under one
3+
# or more contributor license agreements. See the NOTICE file
4+
# distributed with this work for additional information
5+
# regarding copyright ownership. The ASF licenses this file
6+
# to you under the Apache License, Version 2.0 (the
7+
# "License"); you may not use this file except in compliance
8+
# with the License. You may obtain a copy of the License at
9+
#
10+
# http://www.apache.org/licenses/LICENSE-2.0
11+
#
12+
# Unless required by applicable law or agreed to in writing,
13+
# software distributed under the License is distributed on an
14+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15+
# KIND, either express or implied. See the License for the
16+
# specific language governing permissions and limitations
17+
# under the License.
18+
#
19+
20+
name: "Python Release"
21+
22+
on:
23+
workflow_dispatch:
24+
inputs:
25+
version:
26+
description: 'Version'
27+
type: string
28+
default: 'master'
29+
30+
31+
jobs:
32+
build_wheels:
33+
name: Build wheels on ${{ matrix.os }}
34+
runs-on: ${{ matrix.os }}
35+
strategy:
36+
matrix:
37+
os: [ ubuntu-22.04, windows-2022, macos-11 ]
38+
39+
steps:
40+
- uses: actions/checkout@v4
41+
with:
42+
fetch-depth: 0
43+
44+
- uses: actions/setup-python@v4
45+
with:
46+
python-version: '3.8'
47+
48+
- name: Install poetry
49+
run: pip install poetry
50+
51+
- name: Set version
52+
run: python -m poetry version "${{ inputs.version }}"
53+
working-directory: ./python
54+
if: "${{ github.event.inputs.version != 'master' }}"
55+
56+
# Publish the source distribution with the version that's in
57+
# the repository, otherwise the tests will fail
58+
- name: Compile source distribution
59+
run: python3 -m poetry build --format=sdist
60+
if: startsWith(matrix.os, 'ubuntu')
61+
working-directory: ./python
62+
63+
- name: Build wheels
64+
uses: pypa/[email protected]
65+
with:
66+
output-dir: wheelhouse
67+
config-file: "pyproject.toml"
68+
env:
69+
# Ignore 32 bit architectures
70+
CIBW_ARCHS: "auto64"
71+
CIBW_PROJECT_REQUIRES_PYTHON: ">=3.8,<3.12"
72+
CIBW_TEST_REQUIRES: "pytest==7.4.2 moto==4.2.2"
73+
CIBW_TEST_EXTRAS: "s3fs,glue"
74+
CIBW_TEST_COMMAND: "pytest -Werror {project}/tests/avro/test_decoder.py"
75+
# There is an upstream issue with installing on MacOSX
76+
# https://github.com/pypa/cibuildwheel/issues/1603
77+
# Ignore tests for pypy since not all dependencies are compiled for it
78+
# and would require a local rust build chain
79+
CIBW_TEST_SKIP: "pp* *macosx*"
80+
81+
- name: Add source distribution
82+
if: startsWith(matrix.os, 'ubuntu')
83+
run: ls -lah dist/* && cp dist/* wheelhouse/
84+
85+
- uses: actions/upload-artifact@v3
86+
with:
87+
name: "release-${{ github.event.inputs.version }}"
88+
path: ./wheelhouse/*

0 commit comments

Comments
 (0)