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

Superset version bump #2

Open
wants to merge 56 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
7518248
Bump redis from 3.5.3 to 4.5.3
dependabot[bot] Mar 27, 2023
c9bd17f
Merge pull request #249 from amancevice/dependabot/pip/redis-4.5.3
amancevice Mar 27, 2023
af1e5ce
Bump cryptography from 38.0.4 to 39.0.1
dependabot[bot] Mar 27, 2023
39ce91b
Merge pull request #250 from amancevice/dependabot/pip/cryptography-3…
amancevice Mar 27, 2023
e25a59c
Bump redis from 4.5.3 to 4.5.4
dependabot[bot] Mar 31, 2023
4d79190
Merge pull request #251 from amancevice/dependabot/pip/redis-4.5.4
amancevice Mar 31, 2023
8c99691
Superset ~> 2.1
amancevice Apr 5, 2023
c3897cb
pybigquery -> sqlalchemy-bigquery
amancevice Apr 26, 2023
d5dfac0
Bump requests from 2.28.2 to 2.31.0
dependabot[bot] May 23, 2023
f85c44b
Merge pull request #256 from amancevice/dependabot/pip/requests-2.31.0
amancevice May 23, 2023
c475f6f
Superset ~> 2.1.1
amancevice Aug 30, 2023
1304f4c
Upgrade sqlalchemy-redshift to v0.8.14
danisola Sep 6, 2023
84902f6
Merge pull request #258 from danisola/upgrade-sqlalchemy-redshift
amancevice Sep 18, 2023
9ff532a
Python 3.9
amancevice Sep 18, 2023
b0cbf46
build updates
amancevice Oct 6, 2023
7dac8d8
update bin files
amancevice Oct 6, 2023
71a489d
update actions
amancevice Oct 13, 2023
a22642c
remove edge job
amancevice Oct 13, 2023
01b83b9
add requirements*.txt to git
amancevice Oct 13, 2023
30a6034
upgrade Pipfile
amancevice Oct 13, 2023
0070f77
update Dockerfile
amancevice Oct 13, 2023
dd75866
actions fix
amancevice Oct 14, 2023
48341e8
superset ~> v3.0.1
amancevice Oct 18, 2023
5fd02e4
pipenv update
amancevice Oct 26, 2023
2714c4e
Add prophet to requirements
Gloccck Nov 15, 2023
bb4a5a0
Merge pull request #265 from Gloccck/add-prophet-requirement
amancevice Jan 14, 2024
5a525ec
rm edge
amancevice Jan 14, 2024
2919898
Python ~> 3.10
amancevice Jan 14, 2024
a33db6d
pipenv upgrade
amancevice Jan 15, 2024
8d95ae3
Superset ~> v3.0.3
amancevice Jan 17, 2024
7ac9cd2
superset ~> 3.1.0
amancevice Jan 23, 2024
9475c9f
upgrade pillow to v10.2
amancevice Jan 23, 2024
5f5eb2a
multi-arch init
amancevice Feb 3, 2024
49f7ff5
upgrade node in GitHub actions
amancevice Feb 3, 2024
7d7dc68
upgrade checkout GitHub action
amancevice Feb 3, 2024
beb10d5
Merge pull request #271 from amancevice/multiarch
amancevice Feb 4, 2024
9940afd
Superset ~> v3.1.1
amancevice Feb 20, 2024
11efee3
update actions
amancevice Feb 21, 2024
f30ca5b
Superset ~> v4.0
amancevice Apr 8, 2024
72937e7
pipenv update
amancevice Apr 30, 2024
e32c2c8
Python ~> 3.11
amancevice May 4, 2024
a2b7dd8
Superset ~> v4.0.1
amancevice May 13, 2024
01027f2
pipenv update
amancevice Jul 1, 2024
0330fdf
Revert Python version
sas1024 Jul 5, 2024
923f57a
Merge pull request #276 from sas1024/main
amancevice Jul 5, 2024
63eaf79
Superset ~> 4.0.2
amancevice Aug 1, 2024
47ad58f
pipenv update
amancevice Aug 15, 2024
e224eef
pipenv update
amancevice Sep 29, 2024
3581776
Python ~> v3.11
amancevice Sep 29, 2024
2c0707d
pipenv upgrades
amancevice Sep 29, 2024
a20eb29
Dockerfile warning fix
amancevice Sep 29, 2024
03630ea
Python v3.11 fixes
amancevice Sep 29, 2024
ee9cbc2
superset ~> v4.1
amancevice Nov 13, 2024
3f7b337
Pillow ~> v10.3
amancevice Nov 13, 2024
c17e333
pipenv update
amancevice Nov 20, 2024
9c648b9
Superset ~> v4.1.1
amancevice Nov 22, 2024
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
26 changes: 0 additions & 26 deletions .github/workflows/edge.yml

This file was deleted.

19 changes: 12 additions & 7 deletions .github/workflows/latest.yml
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
name: latest
on:
push:
branches:
- main
- multiarch
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: npm install -g dockerlint
- run: dockerlint
build:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
- uses: actions/checkout@v4
- uses: docker/setup-qemu-action@v3
- uses: docker/setup-buildx-action@v3
- uses: docker/build-push-action@v5
with:
python-version: "3.8"
- run: pip install pipenv
- run: make build
platforms: |
linux/amd64
linux/arm64
26 changes: 18 additions & 8 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,22 +7,32 @@ jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: npm install -g dockerlint
- run: dockerlint
build-push:
runs-on: ubuntu-latest
needs: lint
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: docker/setup-qemu-action@v3
- uses: docker/setup-buildx-action@v3
- uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- uses: actions/setup-python@v3
- name: meta
id: meta
run: |
version="$(grep apache-superset Pipfile | grep -Eo '[0-9.]+')"
tags="amancevice/superset,amancevice/superset:$version"
echo "tags=$tags" >> "$GITHUB_OUTPUT"
- uses: docker/build-push-action@v5
with:
python-version: "3.8"
- run: pip install pipenv
- run: make build
- run: make push
platforms: |
linux/amd64
linux/arm64
push: true
tags: |
${{ steps.meta.outputs.tags }}
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,2 @@
**/.docker/
**/.env
requirements*.txt
2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.8.16
3.11.10
72 changes: 35 additions & 37 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
ARG NODE_VERSION=16
ARG PYTHON_VERSION=3.8

ARG PYTHON_VERSION=3.11
FROM python:$PYTHON_VERSION

# Configure environment
# superset recommended defaults: https://superset.apache.org/docs/installation/configuring-superset#running-on-a-wsgi-http-server
# gunicorn recommended defaults: https://docs.gunicorn.org/en/0.17.2/configure.html#security
ARG SUPERSET_VERSION=2.0.1
# superset/gunicorn recommended defaults:
# - https://superset.apache.org/docs/installation/configuring-superset#running-on-a-wsgi-http-server
# - https://docs.gunicorn.org/en/latest/configure.html
ENV FLASK_APP=superset
ENV GUNICORN_BIND=0.0.0.0:8088
ENV GUNICORN_LIMIT_REQUEST_FIELD_SIZE=8190
Expand All @@ -17,50 +15,50 @@ ENV GUNICORN_WORKERS=10
ENV GUNICORN_WORKER_CLASS=gevent
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8
ENV PYTHONPATH=/etc/superset:/home/superset:$PYTHONPATH
ENV SUPERSET_REPO=apache/superset
ENV PYTHONPATH=/etc/superset:/home/superset
ENV SUPERSET_HOME=/var/lib/superset
ENV SUPERSET_VERSION=$SUPERSET_VERSION
ENV GUNICORN_CMD_ARGS="--bind $GUNICORN_BIND --limit-request-field_size $GUNICORN_LIMIT_REQUEST_FIELD_SIZE --limit-request-line $GUNICORN_LIMIT_REQUEST_LINE --threads $GUNICORN_THREADS --timeout $GUNICORN_TIMEOUT --workers $GUNICORN_WORKERS --worker-class $GUNICORN_WORKER_CLASS"

# Configure filesystem
COPY bin /usr/local/bin
VOLUME /etc/superset
VOLUME /home/superset
VOLUME /var/lib/superset

# Create superset user & install dependencies
WORKDIR /home/superset
COPY requirements*.txt ./
RUN groupadd supergroup && \
useradd -U -G supergroup superset && \
chown superset:superset /home/superset && \
mkdir -p /etc/superset && \
mkdir -p $SUPERSET_HOME && \
chown -R superset:superset /etc/superset && \
mkdir -p /etc/superset && \
chown -R superset:superset $SUPERSET_HOME && \
chown -R superset:superset /home/superset && \
chown -R superset:superset /etc/superset && \
apt-get update && \
apt-get install -y \
build-essential \
curl \
default-libmysqlclient-dev \
freetds-bin \
freetds-dev \
libaio1 \
libecpg-dev \
libffi-dev \
libldap2-dev \
libpq-dev \
libsasl2-2 \
libsasl2-dev \
libsasl2-modules-gssapi-mit \
libssl-dev && \
apt-get clean && \
pip install -r requirements.txt && \
pip install -r requirements-dev.txt && \
pip install apache-superset==$SUPERSET_VERSION
build-essential \
curl \
default-libmysqlclient-dev \
freetds-bin \
freetds-dev \
libaio1 \
libecpg-dev \
libffi-dev \
libldap2-dev \
libpq-dev \
libsasl2-2 \
libsasl2-dev \
libsasl2-modules-gssapi-mit \
libssl-dev && \
apt-get clean && \
pip install -U pip

# Configure Filesystem
COPY bin /usr/local/bin
VOLUME /etc/superset
VOLUME /home/superset
VOLUME /var/lib/superset
# Install pips
COPY requirements*.txt ./
RUN pip install -r requirements.txt && \
pip install -r requirements-dev.txt

# Finalize application
# Configure application
EXPOSE 8088
USER superset
HEALTHCHECK CMD ["curl", "-f", "http://localhost:8088/health"]
Expand Down
107 changes: 0 additions & 107 deletions Dockerfile.edge

This file was deleted.

25 changes: 10 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,30 +1,24 @@
ARCH := linux/arm64
REPO := amancevice/superset
PYTHON_VERSION := 3.8
SUPERSET_VERSION := 2.0.1
PYTHON_VERSION := $(shell cat .python-version)
SUPERSET_VERSION := $(shell grep apache-superset Pipfile | grep -Eo '[0-9.]+')

build: requirements-dev.txt
docker build \
docker buildx build \
--build-arg PYTHON_VERSION=$(PYTHON_VERSION) \
--build-arg SUPERSET_VERSION=$(SUPERSET_VERSION) \
--platform $(ARCH) \
--tag $(REPO) \
--tag $(REPO):$(SUPERSET_VERSION) \
.

clean:
pipenv --rm
docker image ls --quiet $(REPO) | uniq | xargs docker image rm --force

edge: requirements-dev.txt
docker build \
--build-arg PYTHON_VERSION=$(PYTHON_VERSION) \
--build-arg SUPERSET_VERSION=master \
--file Dockerfile.edge \
--tag $(REPO):edge \
.

push:
docker push --all-tags $(REPO)

.PHONY: build clean demo edge push
.PHONY: build clean demo push

requirements-dev.txt: requirements.txt
pipenv requirements --dev > $@
Expand All @@ -34,8 +28,9 @@ requirements.txt: Pipfile.lock

Pipfile.lock: Pipfile | .venv
pipenv lock
touch .venv

.venv:
.venv: .python-version
-pipenv --rm
mkdir -p $@
pipenv --python $(PYTHON_VERSION)
touch $@
Loading