jefftriplett / python-actions-alpha-archived Goto Github PK
View Code? Open in Web Editor NEWPlease note that this was for the *alpha* version of GitHub Actions for Python.
License: MIT License
Please note that this was for the *alpha* version of GitHub Actions for Python.
License: MIT License
๐
At first, I was writing actions with Dockerfiles that didn't do much except define the FROM
. What I like to do in a CI context is run simple shell commands. Install dependencies along with make and run a make command. But I need a good python install.
Obviously the python docker images are great for 1) locking to a python version 2) on a known base OS. The only issue with the python images is that the entry point drops into the interpreter and rarely am I looking to run python code in CI. I'll execute shell commands to execute it, but I feel abstracting that into portable shell commands is just better.
So to me, something useful that I've duplicated in a few repos at this point is an action using a generic image like docker://python:3.6-alpine
but overrides the entrypoint with a dumb runner script that just executes a list of shell commands in args
.
Positives
main.workflow
E.g.action "python commands" {
uses = "docker://python:3.6-alpine"
runs = "./runner.sh"
args = [
"apk add make",
"pip install...",
"make test"
]
}
Negatives
But I feel like we could remove that list point if we could write an action like this
action "python commands" {
uses = "jefftriplett/python-actions/3.6@master"
args = [
"apk add make",
"pip install...",
"make test"
]
}
We'd have to make choices about the images to use (I'd probably lean toward slim).
What do you think?
I am very new to github actions and tried it out for the first time today. When I tried to use python-actions, I see this failure:
Here is my main.yml
name: CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- uses: jefftriplett/python-actions@master
- name: Install dependencies
run: pip install --upgrade pip && pip install -r requirements.txt
- name: Deploy
run: ./deploy-to-gh-pages.sh
env:
ACCESS_TOKEN: ${{ secrets.ACCESS_KEY }}
Would you have any thoughts on why this failed?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.