Skip to content

learning-github-actions #12

learning-github-actions

learning-github-actions #12

name: Expression Functions Demo
on:
push:
branches:
- main
jobs:
expression-functions:
runs-on: ubuntu-latest
steps:
- name: Check if string contains substring
if: contains('Hello world', 'llo')
run: echo "The string contains the substring."
- name: Check if string starts with
if: startsWith('Hello world', 'He')
run: echo "The string starts with 'He'."
- name: Check if string ends with
if: endsWith('Hello world', 'ld')
run: echo "The string ends with 'ld'."
- name: Format and echo string
run: echo ${{ format('Hello {0} {1} {2}', 'Mona', 'the', 'Octocat') }}
- name: Join issue labels
if: github.event_name == 'issues'
run: echo "Issue labels:${{ join(github.event.issue.labels.*.name, ', ') }}"
- name: Convert job context to JSON
run: echo "Job context in JSON:${{ toJSON(github.job) }}"
- name: Parse JSON string
run: echo "Parsed JSON:${{ fromJSON('{"hello":"world"}').hello }}"
- name: Hash files
run: echo "Hash of files:${{ hashFiles('**/package-lock.json', '**/Gemfile.lock') }}
- name: The job has succeeded
if: ${{ success() }}
- name: The job has failed
if: ${{ failure() }}
run: echo "failed to do job"