Skip to content

Commit

Permalink
Merge the workflow to dev (deepmodeling#13)
Browse files Browse the repository at this point in the history
* update readme (deepmodeling#5)


* update readme includes the deeptb paper link.

---------

* Update README.md

* add 1 million atoms figure

* Update README.md

* Update README.md

* Add files via upload

* Add files via upload

* Add files via upload

add flexibility figure

* Nrl qg (deepmodeling#7)

* update hBN example

* add the xdat.traj in hbn sparse data.

* Create unit_test.yml

add unit test config file

* Update unit_test.yml

* update unit test for github

* update unit test

* update unit test config

* try install openblas in advance

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* test

* update

* update Dockerfile image automaking and unit test

* test action

* add Dockerfile

* update Dockerfile

* update dockerfile

* update dockerfile

* update dockerfile

* update dockerfile

* update dockerfile

* update dockerfile

* update dockerfile

* update

* update unit_test.yml

* update uni_test.yml

* update unit_test

* test ut (deepmodeling#12)

* test ut

* update unit_test

* update unit_test

* update unit_test

* update unit_test

* update unit_test

* update unit_test

* update unit_test

* update

* update unit_test

* update unit_test

* update unit_Test

* update unit_test

* update unit_test

* update unit_test

* update self-hosted runner

* update unit_test

* update unit_test

* test output

* update unit_test

* update unit_test

* update unit_test

* update

* update

* update

* update unit_test

* update why it does not work???

* update ut

* update unit_test

* update unit_test

* update unit_test

* update unit test

* update unit_test

* update unit_test

* update unit_test

* update unit_test to remove push trigger

---------

Co-authored-by: Qiangqiang Gu <[email protected]>
  • Loading branch information
floatingCatty and QG-phy authored Sep 8, 2023
1 parent 77556b6 commit d876178
Show file tree
Hide file tree
Showing 19 changed files with 418 additions and 12 deletions.
49 changes: 49 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Bug Report
description: Create a report for problems with DeePTB
labels: [Bug]
assignees: zhanghao
body:
- type: textarea
attributes:
label: Describe the bug
description: |
A clear and concise description of what the bug is. The bug may results in:
- abnormal interruption of the program,
- systematic or randomized numerical error, or
- relatively low efficiency.
validations:
required: true

- type: textarea
attributes:
label: Expected behavior
description: |
A clear and concise description of what you expected to happen.
- type: textarea
attributes:
label: To Reproduce
description: |
Steps to reproduce the behavior:
1. [e.g. clone the source code from ...]
2. [e.g. install DeePTB ...]
3. [e.g. run DeePTB with ...]
It is recommended to attach your calculation case here for the developers to reproduce the bug.
- type: textarea
attributes:
label: Environment
description: |
- OS: [e.g. Ubuntu 20.04]
- Dependencies: [e.g. PyTorch, SciPy, NumPy, ...]
- type: textarea
attributes:
label: Additional Context
description: |
Add any other context about the problem here.
- type: markdown
attributes:
value: >
Thanks for contributing 🎉!
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Feature Request
description: Suggest something more for DeePTB to do
labels: [Feature]
assignees: zhanghao

body:
- type: textarea
attributes:
label: Background
description: |
A clear and concise description of why this new feature is important.
validations:
required: true

- type: textarea
attributes:
label: Describe the solution you'd like
description: |
A clear and concise description of what you want to happen.
validations:
required: true

- type: textarea
attributes:
label: Additional Context
description: |
Add any other context or screenshots about the feature request here.
- type: markdown
attributes:
value: >
Thanks for contributing 🎉!
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/help-wanted.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: Help Wanted
description: For general questions or assistance.
labels: [Help wanted]
assignees: zhanghao

body:
- type: textarea
attributes:
label: Details
description: |
Want to use DeePTB for certain system? Facing problems when installing DeePTB? Don't know how to choose a good parameter? Feel free to reach us, and we'll do our best to help!
validations:
required: true
- type: markdown
attributes:
value: >
Thanks for contributing 🎉!
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/software-enhancements.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Software Enhancements
description: Suggest an idea to make DeePTB more robust and organized
labels: [Refactor]
assignees: zhanghao

body:
- type: textarea
attributes:
label: Describe Current Status and Possible Solution
description: |
A clear and concise description of why this enhancement is important.
Describing the current situation of DeePTB is preferred.
If you have some ideas about how to achieve it, please feel free to comment.
validations:
required: true

- type: textarea
attributes:
label: Additional Context
description: |
Add any other context or screenshots about the enhancement here.
- type: markdown
attributes:
value: >
Thanks for contributing 🎉!
23 changes: 23 additions & 0 deletions .github/ISSUE_TEMPLATE/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Tests
description: Regarding tests of DeePTB
labels: [Test]
assignees: zhanghao

body:
- type: textarea
attributes:
label: Describe Current Status and Possible Solution

validations:
required: true

- type: textarea
attributes:
label: Additional Context
description: |
Add any other context or screenshots about the enhancement here.
- type: markdown
attributes:
value: >
Thanks for contributing 🎉!
47 changes: 47 additions & 0 deletions .github/workflows/devcontainer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Container

on:
push:
paths-ignore:
- 'docs/**'
branches:
- dev

jobs:
build_container_and_push:
runs-on: ubuntu-latest
if: github.repository_owner == 'deepmodeling'
strategy:
matrix:
dockerfile: ["dev"]
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Login to Aliyun Registry
uses: docker/login-action@v2
with:
registry: registry.dp.tech
username: ${{ secrets.DP_HARBOR_USERNAME }}
password: ${{ secrets.DP_HARBOR_PASSWORD }}

- name: Build and Push Container
uses: docker/build-push-action@v4
with:
tags: |
ghcr.io/deepmodeling/deeptb-${{ matrix.dockerfile }}:latest
registry.dp.tech/deepmodeling/deeptb-${{ matrix.dockerfile }}:latest
file: Dockerfile.${{ matrix.dockerfile }}
cache-from: type=registry,ref=ghcr.io/deepmodeling/deeptb-${{ matrix.dockerfile }}:latest
cache-to: type=inline
push: true
50 changes: 50 additions & 0 deletions .github/workflows/image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Build Image

on:
workflow_dispatch:
push:
tags:
- 'v*'
jobs:
build_container_and_push:
runs-on: ubuntu-latest
if: github.repository_owner == 'deepmodeling'
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Docker meta
id: meta
uses: docker/metadata-action@v4
with:
images: |
ghcr.io/deepmodeling/deeptb
registry.dp.tech/deepmodeling/deeptb
tags: |
type=semver,pattern={{version}}
type=raw,value=latest,enable=${{ github.event_name == 'workflow_dispatch' }}
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Login to Aliyun Registry
uses: docker/login-action@v2
with:
registry: registry.dp.tech
username: ${{ secrets.DP_HARBOR_USERNAME }}
password: ${{ secrets.DP_HARBOR_PASSWORD }}

- name: Build and Push Container
uses: docker/build-push-action@v4
with:
tags: ${{ steps.meta.outputs.tags }}
file: Dockerfile
push: true
labels: ${{ steps.meta.outputs.labels }}
44 changes: 44 additions & 0 deletions .github/workflows/unit_test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: DeePTB tests.

on:
pull_request:
paths-ignore:
- 'docs/**'

jobs:
build:
runs-on: self-hosted
outputs:
output1: ${{ steps.s1.outputs.test }}
output2: ${{ steps.s2.outputs.test }}
output3: ${{ steps.s3.outputs.test }}
if: github.repository_owner == 'deepmodeling'
container: ghcr.io/deepmodeling/deeptb:latest
steps:
- name: Checkout
id: s1
uses: actions/checkout@v3
with:
ref: "refs/pull/${{ github.event.number }}/merge"
- name: Install DeePTB
id: s2
run: |
exec bash
conda activate deeptb
pip install .
pip install pytest
- name: Run Test
id: s3
run: |
exec bash
conda activate deeptb
pytest ./dptb/tests/
job2:
runs-on: self-hosted
needs: build
steps:
- env:
OUTPUT1: ${{needs.build.outputs.output1}}
OUTPUT2: ${{needs.build.outputs.output2}}
OUTPUT3: ${{needs.build.outputs.output3}}
run: echo "$OUTPUT1 $OUTPUT2 $OUTPUT3 ????"
34 changes: 25 additions & 9 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,25 @@
FROM python:3.10
RUN pip install torch
RUN pip install torchsort
RUN pip install numpy scipy spglib matplotlib
RUN pip install ase
RUN pip install pytest
RUN pip install future
RUN pip install pyyaml
RUN pip install dargs==0.3.3
FROM ubuntu:20.04
SHELL ["/bin/bash", "-c"]
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install wget -y && apt-get clean all
RUN apt update && apt install -y --no-install-recommends git

RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \
bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda && \
/opt/miniconda/bin/conda init bash && \
rm -rf Miniconda3-latest-Linux-x86_64.sh && \
rm -rf /var/lib/apt/lists/*

ENV PATH=/opt/miniconda/bin:$PATH

RUN git clone https://github.com/deepmodeling/DeePTB.git && \
conda create -n deeptb python=3.8 -c conda-forge -y && \
conda init && \
source activate deeptb && \
cd ./DeePTB && \
pip install . && \
cd .. && \
rm ./DeePTB -r && \
conda clean --all -y && \
rm -rf /root/.cache/pip && \
echo "source activate deeptb" >> ~/.bashrc
25 changes: 25 additions & 0 deletions Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM ubuntu:20.04
SHELL ["/bin/bash", "-c"]
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install wget -y && apt-get clean all
RUN apt update && apt install -y --no-install-recommends git

RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh && \
bash Miniconda3-latest-Linux-x86_64.sh -b -p /opt/miniconda && \
/opt/miniconda/bin/conda init bash && \
rm -rf Miniconda3-latest-Linux-x86_64.sh && \
rm -rf /var/lib/apt/lists/*

ENV PATH=/opt/miniconda/bin:$PATH

RUN git clone https://github.com/deepmodeling/DeePTB.git -b dev && \
conda create -n deeptb python=3.8 -c conda-forge -y && \
conda init && \
source activate deeptb && \
cd ./DeePTB && \
pip install . && \
cd .. && \
rm ./DeePTB -r && \
conda clean --all -y && \
rm -rf /root/.cache/pip && \
echo "source activate deeptb" >> ~/.bashrc
9 changes: 9 additions & 0 deletions Dockerfile.gitlab
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
FROM python:3.10
RUN pip install torch
RUN pip install torchsort
RUN pip install numpy scipy spglib matplotlib
RUN pip install ase
RUN pip install pytest
RUN pip install future
RUN pip install pyyaml
RUN pip install dargs==0.3.3
Loading

0 comments on commit d876178

Please sign in to comment.