This commit is contained in:
zgolebiewska 2024-05-26 13:45:44 +02:00
parent ac3e87e726
commit ae48fc2050
2 changed files with 6 additions and 56 deletions

View File

@ -1,19 +1,14 @@
FROM ubuntu:latest FROM ubuntu:latest
RUN apt-get update && apt-get install -y \ RUN apt-get update && apt-get install -y python3-pip unzip coreutils
python3-pip \
unzip \
coreutils
RUN pip3 install kaggle pandas scikit-learn tensorflow RUN pip install --user kaggle pandas scikit-learn tensorflow
WORKDIR /app WORKDIR /app
COPY ./data_processing.sh ./ COPY ./data_processing.sh ./
COPY ./model.py ./
COPY ./OrangeQualityData.csv ./ COPY ./OrangeQualityData.csv ./
COPY ./requirements.txt ./ COPY ./orange_quality_model_tf.h5 ./
COPY ./predictions_tf.json ./
RUN pip3 install -r requirements.txt CMD ["python3", "data_processing.sh"]
CMD ["python3", "model.py"]

47
Jenkinsfile vendored
View File

@ -6,18 +6,8 @@ pipeline {
parameters { parameters {
string( string(
defaultValue: '10000', defaultValue: '10000',
name: 'CUTOFF', name: 'CUTOFF',
description: 'Liczba wierszy do obcięcia ze zbioru danych') description: 'Liczba wierszy do obcięcia ze zbioru danych')
string(
defaultValue: '--epochs 100 --batch_size 32 --learning_rate 0.01',
name: 'TRAINING_PARAMS',
description: 'Parametry trenowania'
)
}
environment {
DATASET_PROJECT = 's123456-create-dataset'
DATA_DIR = 'data'
} }
stages { stages {
@ -26,17 +16,6 @@ pipeline {
checkout([$class: 'GitSCM', branches: [[name: '*/master']], userRemoteConfigs: [[url: 'https://git.wmi.amu.edu.pl/s464906/ium_464906']]]) checkout([$class: 'GitSCM', branches: [[name: '*/master']], userRemoteConfigs: [[url: 'https://git.wmi.amu.edu.pl/s464906/ium_464906']]])
} }
} }
stage('Copy Dataset') {
steps {
script {
copyArtifacts(
projectName: "${DATASET_PROJECT}",
selector: lastSuccessful(),
target: "${env.DATA_DIR}"
)
}
}
}
stage('Set execute permission') { stage('Set execute permission') {
steps { steps {
script { script {
@ -56,29 +35,5 @@ pipeline {
} }
} }
} }
stage('Install Dependencies') {
steps {
sh 'pip install -r requirements.txt'
}
}
stage('Train Model') {
steps {
sh "python model.py ${params.TRAINING_PARAMS}"
}
}
stage('Archive Model') {
steps {
archiveArtifacts artifacts: 'orange_quality_model_tf.h5', allowEmptyArchive: true
archiveArtifacts artifacts: 'predictions_tf.json', allowEmptyArchive: true
}
}
}
post {
always {
cleanWs()
}
} }
} }