forked from 3rdparty/wrf-python
				
			
			
			
				Browse Source
			
			
			
			
				
		* Restructured folders and env files and some docs in regards * Additional refactoring to file names * Github actions configured fully * Corrected ubuntu vs win64 bug in CI * Windows build fix * Trying to fix Windows build tests * Continue fixing windows build tests * ANother fixing attempt on windows build tests * Stil attempting to fix * Another attempt to fix * Little correction in config * Still trying to get windows build tests done * Maybe this time * try a different windows build bat * Another attempt * Trying vs2015 installation * again * Gave up windows build tests * Remove CircleCI config * Corrected env namein docs * Sorted env files alphabeticallymain
				 9 changed files with 93 additions and 188 deletions
			
			
		@ -1,12 +0,0 @@
				@@ -1,12 +0,0 @@
					 | 
				
			||||
name: wrf-python | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
dependencies: | 
				
			||||
  - gcc_linux-64 | 
				
			||||
  - gfortran_linux-64 | 
				
			||||
  - setuptools | 
				
			||||
  - python | 
				
			||||
  - numpy | 
				
			||||
  - wrapt | 
				
			||||
  - xarray | 
				
			||||
  - netcdf4 | 
				
			||||
@ -1,99 +0,0 @@
				@@ -1,99 +0,0 @@
					 | 
				
			||||
# Python CircleCI 2.0 configuration file | 
				
			||||
# | 
				
			||||
# Check https://circleci.com/docs/2.0/language-python/ for more details | 
				
			||||
# | 
				
			||||
version: 2 | 
				
			||||
jobs: | 
				
			||||
  lint: | 
				
			||||
    docker: | 
				
			||||
      - image: circleci/python:3.6.1 | 
				
			||||
 | 
				
			||||
    working_directory: ~/repo | 
				
			||||
 | 
				
			||||
    steps: | 
				
			||||
      - checkout | 
				
			||||
      - run: | 
				
			||||
          name: install pycodestyle | 
				
			||||
          command: | | 
				
			||||
            sudo pip install pycodestyle | 
				
			||||
      - run: | 
				
			||||
          name: run pycodestyle | 
				
			||||
          command: | | 
				
			||||
            pycodestyle src test | 
				
			||||
 | 
				
			||||
  build: | 
				
			||||
    docker: | 
				
			||||
      # specify the version you desire here | 
				
			||||
      # use `-browsers` prefix for selenium tests, e.g. `3.6.1-browsers` | 
				
			||||
      - image: circleci/python:3.6.1 | 
				
			||||
 | 
				
			||||
      # Specify service dependencies here if necessary | 
				
			||||
      # CircleCI maintains a library of pre-built images | 
				
			||||
      # documented at https://circleci.com/docs/2.0/circleci-images/ | 
				
			||||
      # - image: circleci/postgres:9.4 | 
				
			||||
 | 
				
			||||
    working_directory: ~/repo | 
				
			||||
 | 
				
			||||
    steps: | 
				
			||||
      - checkout | 
				
			||||
 | 
				
			||||
      # Download and cache dependencies | 
				
			||||
      - restore_cache: | 
				
			||||
          keys: | 
				
			||||
          - v1-dependencies-{{ checksum ".circleci/conda_env.yml" }} | 
				
			||||
 | 
				
			||||
      - run: | 
				
			||||
          name: install conda and dependencies | 
				
			||||
          command: | | 
				
			||||
            test -d ~/miniconda3 && exit 0 | 
				
			||||
            echo "Installing a fresh version of Miniconda." | 
				
			||||
            MINICONDA_URL="https://repo.continuum.io/miniconda" | 
				
			||||
            MINICONDA_FILE="Miniconda3-latest-Linux-x86_64.sh" | 
				
			||||
            curl -L -O "${MINICONDA_URL}/${MINICONDA_FILE}" | 
				
			||||
            bash $MINICONDA_FILE -b | 
				
			||||
            source ~/miniconda3/bin/activate root | 
				
			||||
            conda env create -f .circleci/conda_env.yml | 
				
			||||
 | 
				
			||||
      - save_cache: | 
				
			||||
          paths: | 
				
			||||
            - ~/miniconda3 | 
				
			||||
          key: v1-dependencies-{{ checksum ".circleci/conda_env.yml" }} | 
				
			||||
 | 
				
			||||
      - run: | 
				
			||||
          name: build wrf-python | 
				
			||||
          command: | | 
				
			||||
            source ~/miniconda3/bin/activate wrf-python | 
				
			||||
            unset FFLAGS | 
				
			||||
            unset LDFLAGS | 
				
			||||
            unset CFLAGS | 
				
			||||
            cd fortran/build_help | 
				
			||||
            $FC -o sizes -fopenmp omp_sizes.f90 | 
				
			||||
            LD_LIBRARY_PATH=~/miniconda3/envs/wrf-python/lib python sub_sizes.py | 
				
			||||
            cd .. | 
				
			||||
            $FC -E ompgen.F90 -fopenmp -cpp -o omp.f90 | 
				
			||||
            cd .. | 
				
			||||
            python setup.py config_fc --f90flags="-mtune=generic -fopenmp" build_ext --libraries="gomp" build | 
				
			||||
            python setup.py install --single-version-externally-managed --record=record.txt | 
				
			||||
 | 
				
			||||
 | 
				
			||||
      # run tests! | 
				
			||||
      # this example uses Django's built-in test-runner | 
				
			||||
      # other common Python testing frameworks include pytest and nose | 
				
			||||
      # https://pytest.org | 
				
			||||
      # https://nose.readthedocs.io | 
				
			||||
      - run: | 
				
			||||
          name: run tests | 
				
			||||
          command: | | 
				
			||||
            source ~/miniconda3/bin/activate wrf-python | 
				
			||||
            cd test/ci_tests | 
				
			||||
            python utests.py | 
				
			||||
 | 
				
			||||
      - store_artifacts: | 
				
			||||
          path: test-reports | 
				
			||||
          destination: test-reports | 
				
			||||
workflows: | 
				
			||||
  version: 2 | 
				
			||||
  build_and_lint: | 
				
			||||
    jobs: | 
				
			||||
      - build | 
				
			||||
      - lint | 
				
			||||
@ -0,0 +1,56 @@
				@@ -0,0 +1,56 @@
					 | 
				
			||||
name: CI | 
				
			||||
on: | 
				
			||||
  push: | 
				
			||||
  pull_request: | 
				
			||||
  workflow_dispatch: | 
				
			||||
  # schedule: | 
				
			||||
  #    - cron: '0 0 * * *' # Daily “At 00:00” | 
				
			||||
 | 
				
			||||
jobs: | 
				
			||||
  test: | 
				
			||||
    # if: | | 
				
			||||
    #   github.repository == 'NCAR/wrf-python' | 
				
			||||
    name: Python (${{ matrix.python-version }}, ${{ matrix.os }}) | 
				
			||||
    runs-on: ${{ matrix.os }} | 
				
			||||
    defaults: | 
				
			||||
      run: | 
				
			||||
        shell: bash -l {0} | 
				
			||||
 | 
				
			||||
    strategy: | 
				
			||||
      fail-fast: false | 
				
			||||
      matrix: | 
				
			||||
        os: [ "ubuntu-latest", "macos-latest"] | 
				
			||||
        python-version: [ "3.6", "3.7", "3.8", "3.9" ] | 
				
			||||
 | 
				
			||||
    steps: | 
				
			||||
      - name: Cancel previous runs | 
				
			||||
        uses: styfle/cancel-workflow-action@0.9.0 | 
				
			||||
        with: | 
				
			||||
          access_token: ${{ github.token }} | 
				
			||||
      - name: Checkout | 
				
			||||
        uses: actions/checkout@v2 | 
				
			||||
        with: | 
				
			||||
          token: ${{ github.token }} | 
				
			||||
      - name: Conda setup | 
				
			||||
        uses: conda-incubator/setup-miniconda@v2 | 
				
			||||
        with: | 
				
			||||
          activate-environment: wrf_python_build | 
				
			||||
          python-version: ${{ matrix.python-version }} | 
				
			||||
          channels: conda-forge, ncar | 
				
			||||
      - name: Conda install (Darwin) | 
				
			||||
        if: matrix.os == 'macos-latest' | 
				
			||||
        run: | | 
				
			||||
          conda env update --file build_envs/Darwin.yml --prune | 
				
			||||
      - name: Conda install (Linux) | 
				
			||||
        if: matrix.os == 'ubuntu-latest' | 
				
			||||
        run: | | 
				
			||||
          conda env update --file build_envs/Linux.yml --prune | 
				
			||||
      - name: Build WRF-Python | 
				
			||||
        run: | | 
				
			||||
          cd build_scripts | 
				
			||||
          ./gnu_omp.sh | 
				
			||||
          cd .. | 
				
			||||
      - name: Run tests | 
				
			||||
        run: | | 
				
			||||
          cd test/ci_tests | 
				
			||||
          python utests.py | 
				
			||||
@ -1,20 +1,21 @@
				@@ -1,20 +1,21 @@
					 | 
				
			||||
# Create full conda environment for development, including some useful tools | 
				
			||||
name: develop | 
				
			||||
name: wrf_python_build | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
dependencies: | 
				
			||||
  - python=3 | 
				
			||||
  - wrapt | 
				
			||||
  - numpy | 
				
			||||
  - basemap | 
				
			||||
  - cartopy | 
				
			||||
  - clang_osx-64 | 
				
			||||
  - gfortran_osx-64 | 
				
			||||
  - jupyter | 
				
			||||
  - matplotlib | 
				
			||||
  - netcdf4 | 
				
			||||
  - xarray | 
				
			||||
  - jupyter | 
				
			||||
  - numpy | 
				
			||||
  - pycodestyle | 
				
			||||
  - setuptools | 
				
			||||
  - sphinx | 
				
			||||
  - sphinx_rtd_theme | 
				
			||||
  - pycodestyle | 
				
			||||
  - cartopy | 
				
			||||
  - basemap | 
				
			||||
  - clang_osx-64 | 
				
			||||
  - gfortran_osx-64 | 
				
			||||
  - wrapt | 
				
			||||
  - xarray | 
				
			||||
 | 
				
			||||
@ -1,20 +1,21 @@
				@@ -1,20 +1,21 @@
					 | 
				
			||||
# Create full conda environment for development, including some useful tools | 
				
			||||
name: develop | 
				
			||||
name: wrf_python_build | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
dependencies: | 
				
			||||
  - python=3 | 
				
			||||
  - wrapt | 
				
			||||
  - numpy | 
				
			||||
  - basemap | 
				
			||||
  - cartopy | 
				
			||||
  - gcc_linux-64 | 
				
			||||
  - gfortran_linux-64 | 
				
			||||
  - jupyter | 
				
			||||
  - matplotlib | 
				
			||||
  - netcdf4 | 
				
			||||
  - xarray | 
				
			||||
  - jupyter | 
				
			||||
  - numpy | 
				
			||||
  - pycodestyle | 
				
			||||
  - setuptools | 
				
			||||
  - sphinx | 
				
			||||
  - sphinx_rtd_theme | 
				
			||||
  - pycodestyle | 
				
			||||
  - cartopy | 
				
			||||
  - basemap | 
				
			||||
  - gcc_linux-64 | 
				
			||||
  - gfortran_linux-64 | 
				
			||||
  - wrapt | 
				
			||||
  - xarray | 
				
			||||
 | 
				
			||||
@ -1,19 +1,21 @@
				@@ -1,19 +1,21 @@
					 | 
				
			||||
# Create full conda environment for development, including some useful tools | 
				
			||||
name: develop | 
				
			||||
name: wrf_python_build | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
  - msys2 | 
				
			||||
dependencies: | 
				
			||||
  - python=3 | 
				
			||||
  - wrapt | 
				
			||||
  - numpy | 
				
			||||
  - basemap | 
				
			||||
  - cartopy | 
				
			||||
  - jupyter | 
				
			||||
  - m2w64-toolchain | 
				
			||||
  - matplotlib | 
				
			||||
  - netcdf4 | 
				
			||||
  - xarray | 
				
			||||
  - jupyter | 
				
			||||
  - numpy | 
				
			||||
  - pycodestyle | 
				
			||||
  - setuptools | 
				
			||||
  - sphinx | 
				
			||||
  - sphinx_rtd_theme | 
				
			||||
  - pycodestyle | 
				
			||||
  - cartopy | 
				
			||||
  - basemap | 
				
			||||
  - m2w64-toolchain | 
				
			||||
  - wrapt | 
				
			||||
  - xarray | 
				
			||||
 | 
				
			||||
@ -1,22 +0,0 @@
				@@ -1,22 +0,0 @@
					 | 
				
			||||
# Create full conda environment for development, including some useful tools | 
				
			||||
name: testenv2 | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
dependencies: | 
				
			||||
  - python=2 | 
				
			||||
  - wrapt | 
				
			||||
  - numpy | 
				
			||||
  - matplotlib | 
				
			||||
  - netcdf4 | 
				
			||||
  - xarray | 
				
			||||
  - jupyter | 
				
			||||
  - sphinx | 
				
			||||
  - sphinx_rtd_theme | 
				
			||||
  - pycodestyle | 
				
			||||
  - cartopy | 
				
			||||
  - basemap | 
				
			||||
  - clang_osx-64 | 
				
			||||
  - gfortran_osx-64 | 
				
			||||
  - pynio | 
				
			||||
  - ncl | 
				
			||||
   | 
				
			||||
@ -1,22 +0,0 @@
				@@ -1,22 +0,0 @@
					 | 
				
			||||
# Create full conda environment for development, including some useful tools | 
				
			||||
name: testenv3 | 
				
			||||
channels: | 
				
			||||
  - conda-forge | 
				
			||||
dependencies: | 
				
			||||
  - python=3 | 
				
			||||
  - wrapt | 
				
			||||
  - numpy | 
				
			||||
  - matplotlib | 
				
			||||
  - netcdf4 | 
				
			||||
  - xarray | 
				
			||||
  - jupyter | 
				
			||||
  - sphinx | 
				
			||||
  - sphinx_rtd_theme | 
				
			||||
  - pycodestyle | 
				
			||||
  - cartopy | 
				
			||||
  - basemap | 
				
			||||
  - clang_osx-64 | 
				
			||||
  - gfortran_osx-64 | 
				
			||||
  - pynio | 
				
			||||
  - ncl | 
				
			||||
   | 
				
			||||
					Loading…
					
					
				
		Reference in new issue