diff --git a/download.sh b/download.sh new file mode 100644 index 0000000..7e7dbb9 --- /dev/null +++ b/download.sh @@ -0,0 +1,11 @@ +kaggle datasets download -d csafrit2/steel-industry-energy-consumption +unzip -o steel-industry-energy-consumption.zip + +tail -n +2 Steel_industry_data.csv | cut -d, -f8 --complement | shuf > steel_industry_data_shuffled.csv +number_of_lines=$(wc -l steel_industry_data_shuffled.csv | awk '{print $1}') +test_len=$((number_of_lines/10)) +dev_len=$((number_of_lines/10)) +head -n $test_len steel_industry_data_shuffled.csv > steel_industry_data_test.csv +tail -n +$((test_len+1)) steel_industry_data_shuffled.csv | head -n $dev_len > steel_industry_data_dev.csv +tail -n +$((test_len+dev_len+1)) steel_industry_data_shuffled.csv > steel_industry_data_train.csv +rm steel_industry_data_shuffled.csv \ No newline at end of file diff --git a/jenkinsfile b/jenkinsfile index 560c821..da403ec 100644 --- a/jenkinsfile +++ b/jenkinsfile @@ -1,10 +1,75 @@ pipeline { - agent any + agent any + parameters { + string( + defaultValue: 'ikami1', + description: 'Kaggle username', + name: 'KAGGLE_USERNAME', + trim: false + ), + password( + defaultValue: '17eaeb44a09284608df768f4c9c8c7af', + description: 'Kaggle token taken from kaggle.json file, as described in https://github.com/Kaggle/kaggle-api#api-credentials', + name: 'KAGGLE_KEY' + ) + } + environment { + KAGGLE_USERNAME="$params.KAGGLE_USERNAME" + KAGGLE_KEY="$params.KAGGLE_KEY" + } stages { - stage('Stage 1') { + stage('Test stage') { steps { echo 'Hello world! Some test text - added text' } } + stage('Checkout') { + steps { + checkout scm + } + } + stage('Shell script') { + steps { + script{ + withEnv(["KAGGLE_USERNAME=${params.KAGGLE_USERNAME}", + "KAGGLE_KEY=${params.KAGGLE_KEY}" ]) { + sh 'echo KAGGLE_USERNAME: $KAGGLE_USERNAME' + sh 'kaggle datasets list' + sh './download.sh' + } + } + } + } } +} + + +pipeline { + agent any + //Definijuemy parametry, które będzie można podać podczas wywoływania zadania + parameters { + string ( + defaultValue: 'Hello World!', + description: 'Tekst, którym chcesz przywitać świat', + name: 'INPUT_TEXT', + trim: false + ) + } + stages { + stage('Hello') { + steps { + //Wypisz wartość parametru w konsoli (To nie jest polecenie bash, tylko groovy!) + echo "INPUT_TEXT: ${INPUT_TEXT}" + //Wywołaj w konsoli komendę "figlet", która generuje ASCI-art + sh "figlet \"${INPUT_TEXT}\" | tee output.txt" + } + } + stage('Goodbye!') { + steps { + echo 'Goodbye!' + //Zarchiwizuj wynik + archiveArtifacts 'output.txt' + } + } + } } \ No newline at end of file