https://github.com/interviewstreet/languages
https://github.com/interviewstreet/languages
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/interviewstreet/languages
- Owner: interviewstreet
- Created: 2017-10-24T14:24:10.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-12-26T09:28:46.000Z (over 6 years ago)
- Last Synced: 2025-02-07T23:27:06.690Z (over 1 year ago)
- Language: Ruby
- Size: 42 KB
- Stars: 0
- Watchers: 84
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# languages
languages chef cookbook is the infrastructure code to install all the languages, frameowrks and libraries that are supported in codechecker. Codechecker infrastructure runs on Ubuntu 16.04 (LTS) AMD64 virtualized c3.large EC2 instances.
[attributes](https://github.com/interviewstreet/languages/tree/master/attributes) folder consists of all the configuration information, language / framework versions and installation URLs
[recipes](https://github.com/interviewstreet/languages/tree/master/recipes) folder contains actual installation scripts
## Updating language version
**Eg: Java 8:** Updating the installation URL will ensure newer version is installed during next upgrade.
```ruby
default['java8']['url'] = 'http://ftp.osuosl.org/pub/funtoo/distfiles/oracle-java/jdk-8u144-linux-x64.tar.gz'
```
## Adding a new standard library or ML library
**1. Eg: Java:** Adding a new maven jar URL will ensure the library is available for all Java submissions by default
```ruby
default['java']['additional_libraries'] = ['http://search.maven.org/remotecontent?filepath=org/testng/testng/6.8.8/testng-6.8.8.jar',
'http://search.maven.org/remotecontent?filepath=com/googlecode/json-simple/json-simple/1.1.1/json-simple-1.1.1.jar',
'http://search.maven.org/remotecontent?filepath=org/ccil/cowan/tagsoup/tagsoup/1.2.1/tagsoup-1.2.1.jar',
'https://search.maven.org/remotecontent?filepath=com/google/code/gson/gson/2.8.2/gson-2.8.2.jar']
```
**2. Eg: Perl:** If libraries are installed from a package manager then just add the new library to the list and it will be installed during next upgrade.
```ruby
default['perl6']['additional_libraries'] = ['JSON::Class', 'Math::Constants', 'Stats', 'XML::Class', 'Math::Matrix', 'Math::Vector']
```
## New language request for codechecker
Create a pull request with following changes:
1. Add necessary installation steps into attributes & recipes folder.
**NOTE:** i. Stick with stable releases for all installation. Nightly builds & unstable releases won't be accepted as server image reverts can be time consuming
ii. Make sure you also add installation steps for necessary basic libraries and data-structures
2. Code to read 2 values from STDIN and write the sum of those two integers to STDOUT. [Refer](https://www.hackerrank.com/challenges/solve-me-first)
3. Generic compilation & execution command for the language