mirror of
https://github.com/apache/superset.git
synced 2024-09-12 08:39:45 -04:00
74 lines
2.5 KiB
Python
74 lines
2.5 KiB
Python
# 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.
|
|
import json
|
|
import os
|
|
import subprocess
|
|
|
|
from setuptools import find_packages, setup
|
|
|
|
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
|
|
PACKAGE_JSON = os.path.join(BASE_DIR, "superset-frontend", "package.json")
|
|
|
|
|
|
with open(PACKAGE_JSON) as package_file:
|
|
version_string = json.load(package_file)["version"]
|
|
|
|
|
|
def get_git_sha() -> str:
|
|
try:
|
|
s = subprocess.check_output(["git", "rev-parse", "HEAD"])
|
|
return s.decode().strip()
|
|
except Exception:
|
|
return ""
|
|
|
|
|
|
GIT_SHA = get_git_sha()
|
|
version_info = {"GIT_SHA": GIT_SHA, "version": version_string}
|
|
print("-==-" * 15)
|
|
print("VERSION: " + version_string)
|
|
print("GIT SHA: " + GIT_SHA)
|
|
print("-==-" * 15)
|
|
|
|
VERSION_INFO_FILE = os.path.join(BASE_DIR, "superset", "static", "version_info.json")
|
|
|
|
with open(VERSION_INFO_FILE, "w") as version_file:
|
|
json.dump(version_info, version_file)
|
|
|
|
# translating 'no version' from npm to pypi to prevent warning msg
|
|
version_string = version_string.replace("-dev", ".dev0")
|
|
|
|
setup(
|
|
version=version_string,
|
|
packages=find_packages(),
|
|
include_package_data=True,
|
|
zip_safe=False,
|
|
entry_points={
|
|
"console_scripts": ["superset=superset.cli.main:superset"],
|
|
# the `postgres` and `postgres+psycopg2://` schemes were removed in SQLAlchemy 1.4
|
|
# add an alias here to prevent breaking existing databases
|
|
"sqlalchemy.dialects": [
|
|
"postgres.psycopg2 = sqlalchemy.dialects.postgresql:dialect",
|
|
"postgres = sqlalchemy.dialects.postgresql:dialect",
|
|
"superset = superset.extensions.metadb:SupersetAPSWDialect",
|
|
],
|
|
"shillelagh.adapter": [
|
|
"superset=superset.extensions.metadb:SupersetShillelaghAdapter"
|
|
],
|
|
},
|
|
download_url="https://www.apache.org/dist/superset/" + version_string,
|
|
)
|