mirror of
				https://github.com/ARM-software/workload-automation.git
				synced 2025-11-04 09:02:12 +00:00 
			
		
		
		
	Migrate to Github Actions
Now Travis has stopped providing a free tier migrate initial tests over to use Github Actions.
This commit is contained in:
		
							
								
								
									
										92
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,92 @@
 | 
				
			|||||||
 | 
					name: WA Test Suite
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					on:
 | 
				
			||||||
 | 
					  push:
 | 
				
			||||||
 | 
					    branches: [ master ]
 | 
				
			||||||
 | 
					  pull_request:
 | 
				
			||||||
 | 
					    branches: [ master ]
 | 
				
			||||||
 | 
					    types: [opened, synchronize, reopened, ready_for_review]
 | 
				
			||||||
 | 
					  schedule:
 | 
				
			||||||
 | 
					    - cron: 0 2 * * *
 | 
				
			||||||
 | 
					  # Allows runing this workflow manually from the Actions tab
 | 
				
			||||||
 | 
					  workflow_dispatch:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					jobs:
 | 
				
			||||||
 | 
					  Run-Linters-and-Tests:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					    - uses: actions/checkout@v2
 | 
				
			||||||
 | 
					    - name: Set up Python 3.5
 | 
				
			||||||
 | 
					      uses: actions/setup-python@v2
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        python-version: 3.5
 | 
				
			||||||
 | 
					    - name: git-bash
 | 
				
			||||||
 | 
					      uses: pkg-src/github-action-git-bash@v1.1
 | 
				
			||||||
 | 
					    - name: Install dependencies
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        python -m pip install --upgrade pip
 | 
				
			||||||
 | 
					        cd /tmp && git clone https://github.com/ARM-software/devlib.git && cd devlib && pip install .
 | 
				
			||||||
 | 
					        cd $GITHUB_WORKSPACE && pip install .[test]
 | 
				
			||||||
 | 
					        pip install pylint pep8 flake8 mock nose
 | 
				
			||||||
 | 
					    - name: Run pylint
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        cd $GITHUB_WORKSPACE && ./dev_scripts/pylint wa/
 | 
				
			||||||
 | 
					    - name: Run PEP8
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        cd $GITHUB_WORKSPACE && ./dev_scripts/pep8 wa
 | 
				
			||||||
 | 
					    - name: Run nose tests
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        nosetests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  Execute-Test-Workload-and-Process:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    strategy:
 | 
				
			||||||
 | 
					      matrix:
 | 
				
			||||||
 | 
					        python-version: [3.5, 3.6, 3.7, 3.8]
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					    - uses: actions/checkout@v2
 | 
				
			||||||
 | 
					    - name: Set up Python ${{ matrix.python-version }}
 | 
				
			||||||
 | 
					      uses: actions/setup-python@v2
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        python-version: ${{ matrix.python-version }}
 | 
				
			||||||
 | 
					    - name: git-bash
 | 
				
			||||||
 | 
					      uses: pkg-src/github-action-git-bash@v1.1
 | 
				
			||||||
 | 
					    - name: Install dependencies
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        python -m pip install --upgrade pip
 | 
				
			||||||
 | 
					        cd /tmp && git clone https://github.com/ARM-software/devlib.git && cd devlib && pip install .
 | 
				
			||||||
 | 
					        cd $GITHUB_WORKSPACE && pip install .
 | 
				
			||||||
 | 
					    - name: Run test workload
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        cd /tmp && wa run $GITHUB_WORKSPACE/tests/ci/idle_agenda.yaml -v -d idle_workload
 | 
				
			||||||
 | 
					    - name: Test Process Command
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        cd /tmp && wa process -f -p csv idle_workload
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  Test-WA-Commands:
 | 
				
			||||||
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    strategy:
 | 
				
			||||||
 | 
					      matrix:
 | 
				
			||||||
 | 
					        python-version: [3.5, 3.6, 3.7, 3.8]
 | 
				
			||||||
 | 
					    steps:
 | 
				
			||||||
 | 
					    - uses: actions/checkout@v2
 | 
				
			||||||
 | 
					    - name: Set up Python ${{ matrix.python-version }}
 | 
				
			||||||
 | 
					      uses: actions/setup-python@v2
 | 
				
			||||||
 | 
					      with:
 | 
				
			||||||
 | 
					        python-version: ${{ matrix.python-version }}
 | 
				
			||||||
 | 
					    - name: git-bash
 | 
				
			||||||
 | 
					      uses: pkg-src/github-action-git-bash@v1.1
 | 
				
			||||||
 | 
					    - name: Install dependencies
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        python -m pip install --upgrade pip
 | 
				
			||||||
 | 
					        cd /tmp && git clone https://github.com/ARM-software/devlib.git && cd devlib && pip install .
 | 
				
			||||||
 | 
					        cd $GITHUB_WORKSPACE && pip install .
 | 
				
			||||||
 | 
					    - name: Test Show Command
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        wa show dhrystone && wa show generic_android && wa show trace-cmd && wa show csv
 | 
				
			||||||
 | 
					    - name: Test List Command
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        wa list all
 | 
				
			||||||
 | 
					    - name: Test Create Command
 | 
				
			||||||
 | 
					      run: |
 | 
				
			||||||
 | 
					        wa create agenda dhrystone generic_android csv trace_cmd && wa create package test && wa create workload test
 | 
				
			||||||
							
								
								
									
										46
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										46
									
								
								.travis.yml
									
									
									
									
									
								
							@@ -1,46 +0,0 @@
 | 
				
			|||||||
#    Copyright 2018 ARM Limited
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
# Licensed 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.
 | 
					 | 
				
			||||||
#
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
language: python
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
python:
 | 
					 | 
				
			||||||
    - "3.6"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
install:
 | 
					 | 
				
			||||||
    - pip install nose
 | 
					 | 
				
			||||||
    - pip install nose2
 | 
					 | 
				
			||||||
    - pip install flake8
 | 
					 | 
				
			||||||
    - pip install pylint==2.6.0
 | 
					 | 
				
			||||||
    - git clone -v https://github.com/ARM-software/devlib.git /tmp/devlib && cd /tmp/devlib && python setup.py install
 | 
					 | 
				
			||||||
    - cd $TRAVIS_BUILD_DIR && python setup.py install
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
env:
 | 
					 | 
				
			||||||
    global:
 | 
					 | 
				
			||||||
        - PYLINT="cd $TRAVIS_BUILD_DIR && ./dev_scripts/pylint wa"
 | 
					 | 
				
			||||||
        - PEP8="cd $TRAVIS_BUILD_DIR && ./dev_scripts/pep8 wa"
 | 
					 | 
				
			||||||
        - NOSETESTS="nose2 -s $TRAVIS_BUILD_DIR/tests"
 | 
					 | 
				
			||||||
        - WORKLOAD="cd /tmp && wa run $TRAVIS_BUILD_DIR/tests/travis/idle_agenda.yaml -v -d idle_workload"
 | 
					 | 
				
			||||||
        - PROCESS_CMD="$WORKLOAD && wa process -f -p csv idle_workload"
 | 
					 | 
				
			||||||
        - SHOW_CMD="wa show dhrystone && wa show generic_android && wa show trace-cmd && wa show csv"
 | 
					 | 
				
			||||||
        - LIST_CMD="wa list all"
 | 
					 | 
				
			||||||
        - CREATE_CMD="wa create agenda dhrystone generic_android csv trace_cmd && wa create package test && wa create workload test"
 | 
					 | 
				
			||||||
    matrix:
 | 
					 | 
				
			||||||
        - TEST=$PYLINT
 | 
					 | 
				
			||||||
        - TEST=$PEP8
 | 
					 | 
				
			||||||
        - TEST=$NOSETESTS
 | 
					 | 
				
			||||||
        - TEST=$WORKLOAD
 | 
					 | 
				
			||||||
        - TEST="$PROCESS_CMD && $SHOW_CMD && $LIST_CMD && $CREATE_CMD"
 | 
					 | 
				
			||||||
script:
 | 
					 | 
				
			||||||
    - echo $TEST && eval $TEST
 | 
					 | 
				
			||||||
		Reference in New Issue
	
	Block a user