- Preuzeti komprimirani projekt i dekomprimirati ga na proizvoljno mjesto na računalu (npr.
~/ci-sample) - Navigirati na https://github.com/new i kreirati novi repozitorij s proizvoljnim nazivom (npr.
ci-sample) - Otvoriti terminal u direktoriju projekta i inicijalizirati Git repozitorij naredbom
git init - Postaviti GitHub repozitorij kao
originnaredbomgit remote add origin https://github.com/<user-name-here>/<repo-name-here>.git - Postaviti
mainkao glavni branch naredbomgit branch -M main - Dodati promjene i napraviti prvi commit:
git add . && git commit -m "build: initial commit" - Pushati promjene na GitHub:
git push origin main
- Napraviti GitHub Workflow naziva
.github/workflows/dispatch.yml, sadržaja:name: Workflow dispatch on: workflow_dispatch: jobs: run: name: Hello World runs-on: ubuntu-latest steps: - name: Hello World run: echo "Hello World"
- Napraviti novi korak naziva "Environment Variables". Dodati environment varijablu naziva
CURRENT_DATEi hardcode-irati današnji datum. Urunsekciji koraka, ispisati:- datum pomoću
CURRENT_DATE - datum pomoću Linux
datenaredbe - datum pomoću odabrane vrijednosti iz GitHub konteksta (hint: sljedeći zadatak)
- datum pomoću
- Napraviti novi korak naziva "Dump GitHub Context". Ispisati vrijednosti dostupne u kontekstu.
- Napraviti novi korak naziva "List Directory Content". U
runsekciji koraka, ispisati sadržaj direktorija s naredbomls -al. - Napraviti novi korak naziva "Checkout Repository" koristeći akciju actions/checkout.
- Napraviti novi korak naziva "List Repository Content". U
runsekciji koraka, ispisati sadržaj direktorija s naredbomls -al. - Napraviti novi korak naziva "List Environment Variables". U
runsekciji koraka, ispisati environment varijable s naredbomenv. - Napraviti novi korak naziva "List Processes". U
runsekciji koraka, ispisati procese koji su pokrenuti s naredbomps aux. - Napraviti novi korak naziva "Setup Python" koristeći akciju actions/setup-python. Odabrati Python 3.12.
- Napraviti novi korak naziva "Install Requirements". U
runsekciji koraka, instaliratirequirements.txtkoristećipip. - Napraviti novi korak naziva "Generate Report". U
runsekciji koraka, pokrenuti Python skripturun-report.py.
Nakon generiranja izvješća u koraku "Generate Report", je li ono ostalo dostupno na repozitoriju?
- Napraviti GitHub Workflow naziva
.github/workflows/schedule.yml, sadržaja:name: Scheduled Scraper on: workflow_dispatch: # schedule: jobs: run: name: "Run price_scraper" runs-on: ubuntu-latest steps: - name: Checkout Repository uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v4 with: python-version: '3.12' - name: Install price_scraper run: pip install git+https://github.com/andhrelja/price_scraper
- Proći kroz dokumentaciju paketa: https://github.com/andhrelja/price_scraper
- Napraviti novi korak naziva "Run price_scraper". Konfigurirati ulaze i izlaze za paket te pokrenuti skriptu
- Napraviti novi korak naziva "Generate Report". U
runsekciji koraka, pokrenuti Python skripturun-report.py. - Napraviti novi korak naziva "Commit Changes".
- Napraviti novi korak naziva "Push Changes", koristeći ad-m/github-push-action (hint: dopustiti workflow-u ovlast "Write" nad GitHub repozitorijem).
- Konfigurirati
scheduleworkflow-a tako da se on pokreće svaki dan u 00:00 UTC.