From 01de3096b3688266c3895b65285d52d0063be3b5 Mon Sep 17 00:00:00 2001 From: "Hugh A. Miles II" Date: Thu, 22 Apr 2021 17:54:12 -0400 Subject: [PATCH] chore: starter make file (#13970) * starter make file * yea * update docs * lit * remove venv from comamnds * venv --- CONTRIBUTING.md | 16 ++++++++++++++++ Makefile | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 Makefile diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 483e3e0ed301c..0f9491e670a46 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -449,6 +449,22 @@ superset load-examples # Note that your page may not have css at this point. # See instructions below how to build the front-end assets. FLASK_ENV=development superset run -p 8088 --with-threads --reload --debugger + +Or you can install via our Makefile + +```bash +# Create a virtual environment and activate it (recommended) +$ python3 -m venv venv # setup a python3 virtualenv +$ source venv/bin/activate + +# install pip packages + pre-commit +$ make install + +# Install superset pip packages and setup env only +$ make superset + +# Setup pre-commit only +$ make pre-commit ``` **Note: the FLASK_APP env var should not need to be set, as it's currently controlled diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000000..6178bfafa8d7a --- /dev/null +++ b/Makefile @@ -0,0 +1,49 @@ +# +# 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. +# + +.PHONY: install superset venv pre-commit + +install: superset pre-commit + +superset: + # Install external dependencies + pip install -r requirements/local.txt + + # Install Superset in editable (development) mode + pip install -e . + + # Create an admin user in your metadata database + superset fab create-admin + + # Initialize the database + superset db upgrade + + # Create default roles and permissions + superset init + + # Load some data to play with + superset load-examples + +venv: + # Create a virtual environment and activate it (recommended) + python3 -m venv venv # setup a python3 virtualenv + source venv/bin/activate + +pre-commit: + # setup pre commit dependencies + pip3 install -r requirements/integration.txt + pre-commit install