Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Programming exercises: Add Bash programming exercise template #10089

Merged
merged 7 commits into from
Jan 12, 2025

Conversation

magaupp
Copy link
Contributor

@magaupp magaupp commented Dec 31, 2024

Checklist

General

Server

Changes affecting Programming Exercises

  • High priority: I tested all changes and their related features with all corresponding user types on a test server configured with the integrated lifecycle setup (LocalVC and LocalCI).
  • I tested all changes and their related features with all corresponding user types on a local server configured with LocalVC and Jenkins.

Description

The PR adds a programming exercise template for Bash.
The testing framework in use is Bats.

Steps for Testing

Prerequisites:

  • 1 Instructor
  1. Navigate to the programming exercise creation page
  2. Select Bash as the programming language
  3. Fill out the required fields and create the exercise
  4. Wait until the builds finish
  5. Verify that the Template Result passes 0/8 tests without build failure
  6. Verify that the Solution Result passes 8/8 tests without build failure
  7. Verify that the feedback in the Template Result makes sense

Testserver States

Note

These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.







Review Progress

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1
  • Test 2

Summary by CodeRabbit

  • New Features

    • Added support for Bash programming language in continuous integration systems
    • Introduced Bash scripting exercise with tasks for file manipulation and scripting skills
    • Expanded programming language options in the application
  • Documentation

    • Updated documentation to include Bash language details and exercise instructions
  • Chores

    • Added Bash-related templates, test scripts, and configuration files
    • Updated programming language configurations to support Bash

@github-actions github-actions bot added tests server Pull requests that update Java code. (Added Automatically!) client Pull requests that update TypeScript code. (Added Automatically!) documentation config-change Pull requests that change the config in a way that they require a deployment via Ansible. template programming Pull requests that affect the corresponding module labels Dec 31, 2024
Copy link

⚠️ Unable to deploy to test servers ⚠️

The docker build needs to run through before deploying.

@github-actions github-actions bot added the deployment-error Added by deployment workflows if an error occured label Dec 31, 2024
@magaupp magaupp added deploy:artemis-test1 and removed deployment-error Added by deployment workflows if an error occured labels Dec 31, 2024
Copy link

⚠️ Unable to deploy to test servers ⚠️

The docker build needs to run through before deploying.

@github-actions github-actions bot added the deployment-error Added by deployment workflows if an error occured label Dec 31, 2024
@magaupp magaupp added deploy:artemis-test1 and removed deployment-error Added by deployment workflows if an error occured labels Dec 31, 2024
@magaupp magaupp temporarily deployed to artemis-test1.artemis.cit.tum.de December 31, 2024 15:16 — with GitHub Actions Inactive
@magaupp magaupp force-pushed the feature/programming-exercises/bash-template branch 2 times, most recently from bb9b2ef to 7d7ecad Compare January 6, 2025 21:12
Copy link

@vinceclifford vinceclifford left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested on TS5 and was able to produce a Build Failure:

image image

@magaupp
Copy link
Contributor Author

magaupp commented Jan 8, 2025

@vinceclifford No programming exercises are currently working on TS5. It seems like Docker isn't setup correctly.

From Jenkins' logs:

groovy.lang.MissingPropertyException: No such property: docker for class: groovy.lang.Binding

vinceclifford
vinceclifford previously approved these changes Jan 8, 2025
@bensofficial
Copy link
Member

@magaupp @vinceclifford The Jenkins setup should be fixed now.

# Conflicts:
#	src/main/java/de/tum/cit/aet/artemis/programming/service/localci/LocalCIProgrammingLanguageFeatureService.java
@magaupp magaupp dismissed stale reviews from vinceclifford, kevinfischer4, BBesrour, flbrgit, SimonEntholzer, and coderabbitai[bot] January 9, 2025 19:12

The merge-base changed after approval.

@magaupp magaupp temporarily deployed to artemis-test1.artemis.cit.tum.de January 9, 2025 19:40 — with GitHub Actions Inactive
Copy link
Member

@krusche krusche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code looks good 👍

@krusche krusche merged commit e62cefe into develop Jan 12, 2025
36 of 41 checks passed
@krusche krusche deleted the feature/programming-exercises/bash-template branch January 12, 2025 10:33
@krusche krusche added this to the 7.8.3 milestone Jan 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client Pull requests that update TypeScript code. (Added Automatically!) config-change Pull requests that change the config in a way that they require a deployment via Ansible. documentation programming Pull requests that affect the corresponding module ready to merge server Pull requests that update Java code. (Added Automatically!) template tests
Projects
Status: Merged
Status: Done
Development

Successfully merging this pull request may close these issues.

8 participants